Explorar Datos Consolidados

Show code
script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"
Show code
 $(document).ready(function() {
    $('body').prepend('<div class=\"zoomDiv\"><img src=\"\" class=\"zoomImg\"></div>');
    // onClick function for all plots (img's)
    $('img:not(.zoomImg)').click(function() {
      $('.zoomImg').attr('src', $(this).attr('src')).css({width: '100%'});
      $('.zoomDiv').css({opacity: '1', width: 'auto', border: '1px solid white', borderRadius: '5px', position: 'fixed', top: '50%', left: '50%', marginRight: '-50%', transform: 'translate(-50%, -50%)', boxShadow: '0px 0px 50px #888888', zIndex: '50', overflow: 'auto', maxHeight: '100%'});
    });
    // onClick function for zoomImg
    $('img.zoomImg').click(function() {
      $('.zoomDiv').css({opacity: '0', width: '0%'}); 
    });
  });
  
Show code
<script src="hideOutput.js"></script> 
Show code
$(document).ready(function() {    
    $chunks = $('.fold');    
    $chunks.each(function () {      // add button to source code chunks     
    if ( $(this).hasClass('s') ) {       
        $('pre.r', this).prepend("<div class=\"showopt\">Show Source</div><br style=\"line-height:22px;\"/>");
            $('pre.r', this).children('code').attr('class', 'folded');     
            }      // add button to output chunks     
        if ( $(this).hasClass('o') ) {       
            $('pre:not(.r)', this).has('code').prepend("<div class=\"showopt\">Show Output</div><br style=\"line-height:22px;\"/>");       
            $('pre:not(.r)', this).children('code:not(r)').addClass('folded');        // add button to plots       
            $(this).find('img').wrap('<pre class=\"plot\"></pre>');       
            $('pre.plot', this).prepend("<div class=\"showopt\">Show Plot</div><br style=\"line-height:22px;\"/>");       
            $('pre.plot', this).children('img').addClass('folded');      
            }   
});    // hide all chunks when document is loaded   
    $('.folded').css('display', 'none')    // function to toggle the visibility   
    $('.showopt').click(function() {     
            var label = $(this).html();     
            if (label.indexOf("Show") >= 0) {       
                $(this).html(label.replace("Show", "Hide"));     
            } else {
              $(this).html(label.replace("Hide", "Show"));     
            }     
    $(this).siblings('code, img').slideToggle('fast', 'swing');   
    }); 
}); 
Show code
rm(list=ls());gc()
         used (Mb) gc trigger (Mb) max used (Mb)
Ncells 526006 28.1    1181020 63.1   643708 34.4
Vcells 916178  7.0    8388608 64.0  1649398 12.6
Show code
unlink('*_cache', recursive = TRUE)

if(nchar(Sys.getenv("SUPERSECRET"))<2){
  Sys.setenv("SUPERSECRET"=as.character(read.table("secret_key.txt", quote="\"", comment.char="")))
}
if(nchar(Sys.getenv("SUPERSECRET"))<2){
  try(Sys.setenv("SUPERSECRET"=as.character(read.table(paste0(gsub("/gastos","",dirname(rstudioapi::getActiveDocumentContext()$path)),"/secret_key.txt"), quote="\"", comment.char=""))))
}
if(nchar(Sys.getenv("SUPERSECRETT"))<2){
  Sys.setenv("SUPERSECRETT"=as.character(read.table("secret_key2.txt", quote="\"", comment.char="")))
}
if(nchar(Sys.getenv("SUPERSECRETT"))<2){
  try(Sys.setenv("SUPERSECRETT"=as.character(read.table(paste0(gsub("/gastos","",dirname(rstudioapi::getActiveDocumentContext()$path)),"/secret_key2.txt"), quote="\"", comment.char=""))))
}

path_sec<- paste0("https://docs.google.com/spreadsheets/d/",Sys.getenv("SUPERSECRET"),"/export?format=csv&id=",Sys.getenv("SUPERSECRET"),"&gid=1387050788")
path_sec2<- paste0("https://docs.google.com/spreadsheets/d/",Sys.getenv("SUPERSECRETT"),"/export?format=csv&id=",Sys.getenv("SUPERSECRETT"),"&gid=1921324430")

memory.limit(size=56000)
[1] 56000
Show code
path<-dirname(rstudioapi::getSourceEditorContext()$path)

options(knitr.kable.NA = '')
Show code
`%>%` <- magrittr::`%>%`
if(!require(fuzzyjoin)){install.packages("fuzzyjoin")}

INFO <- readxl::read_excel("INFO.xlsx")


invisible("homologar a un sexo los nombres y luego enmascarar")
encuesta_pre <- 
 readr::read_delim(path_sec, 
    delim = ",", escape_double = FALSE, 
    trim_ws = TRUE, skip = 9) 

encuesta<-  
encuesta_pre %>%   
    dplyr::rename(any_of(c(`Ingresa tu correo electrónico Verisure`="\"\"Ingresa tu correo electrónico Verisure\"\""))) %>% 
    #dplyr::rename(`Ingresa tu correo electrónico Verisure` = 5)
  dplyr::left_join(INFO[,c("pmail","sexo")], by=c("correos corregidos 04 08"="pmail")) %>% 
    dplyr::mutate(`correos corregidos 04 08`=ifelse(`correos corregidos 04 08`!="", anonymizer::anonymize(`correos corregidos 04 08`, .algo = "sha256", .seed = 2125),NA_character_))%>% 
    dplyr::mutate(`Ingresa tu correo electrónico Verisure`=ifelse(`Ingresa tu correo electrónico Verisure`!="", anonymizer::anonymize(`Ingresa tu correo electrónico Verisure`, .algo = "sha256", .seed = 2125),NA_character_))

encuesta_pre2 <- 
 readr::read_delim(path_sec2, 
    delim = ",", escape_double = FALSE, 
    trim_ws = TRUE, skip = 3) 

encuesta2<-  
encuesta_pre2 %>%   
  dplyr::rename(any_of(c(`Ingresa tu correo electrónico Verisure`="\"\"Ingresa tu correo electrónico Verisure\"\""))) %>%
  dplyr::rename(any_of(c("Ingresa tu correo electrónico Verisure"="E-mail"))) %>%
  dplyr::left_join(INFO[,c("pmail","fecha_ing","d_unidad","fecha_nac","sexo")], by=c("Ingresa tu correo electrónico Verisure"="pmail")) %>% 
    dplyr::mutate(`Ingresa tu correo electrónico Verisure`=ifelse(`Ingresa tu correo electrónico Verisure`!="", anonymizer::anonymize(`Ingresa tu correo electrónico Verisure`, .algo = "sha256", .seed = 2125),NA_character_))%>% 
    #dplyr::select(-nombre) %>% 
  #agregado 2022-09-04
  dplyr::rename_with(stringr::str_replace, 
              pattern = "A continuación responde las siguientes preguntas indicando el nivel de acuerdo con el enunciado: x ", replacement = "")

#
if(isTRUE(getOption('knitr.in.progress'))==T){
    clus_iter=5000
} else {
  input <- readline('¿Are you gonna run the dataset with the whole iterations? (Si/No): ')
  if(input=="Si"){
    clus_iter=10000
  } else {
    clus_iter=1000
  }
}
library(tm)
if(isTRUE(getOption('knitr.in.progress'))==T){
  input2 <- "todas"
} else {
    input2 <- "todas"
    input2 <- Corpus(VectorSource(input2))
    input2 <- tm_map(input2, tolower)
    input2 <- tm_map(input2,stripWhitespace)
    input2 <- gsub(" ","_",as.character(unlist(input2)[1]))
}
Show code
#evitar que ocupe curl
#options(renv.download.override = utils::download.file)

#arriba puse algunas opciones para que por defecto escondiera el código
#también cargue algunos estilo .css para que el texto me apareciera justificado, entre otras cosas.
local({r <- getOption("repos")
       r["CRAN"] <- "http://cran.r-project.org" 
       options(repos=r)
})

clipboard <- function(x, sep="\t", row.names=FALSE, col.names=TRUE){
     con <- pipe("xclip -selection clipboard -i", open="w")
     write.table(x, con, sep=sep, row.names=row.names, col.names=col.names)
     close(con)
}

copy_names <- function(x,row.names=FALSE,col.names=TRUE,dec=",",...) {
  library(dplyr)
  if(class(ungroup(x))[1]=="tbl_df"){
    if(options()$OutDec=="."){
      options(OutDec = dec)
      write.table(format(data.frame(x)),"clipboard",sep="\t",row.names=FALSE,col.names=col.names,...)
      options(OutDec = ".")
      return(x)
    } else {
      options(OutDec = ",")
      write.table(format(data.frame(x)),"clipboard",sep="\t",row.names=FALSE,col.names=col.names,...)
      options(OutDec = ",")
      return(x)    
    }
  } else {
    if(options()$OutDec=="."){
      options(OutDec = dec)
      write.table(format(x),"clipboard",sep="\t",row.names=FALSE,col.names=col.names,...)
      options(OutDec = ".")
      return(x)
    } else {
      options(OutDec = ",")
      write.table(format(x),"clipboard",sep="\t",row.names=FALSE,col.names=col.names,...)
      options(OutDec = ",")
      return(x)       
    }
  }
}  

if(!require(pacman)){install.packages("pacman")}
Loading required package: pacman
Show code
pacman::p_unlock(lib.loc = .libPaths()) #para no tener problemas reinstalando paquetes

No 00LOCK detected in:
 C:/Program Files/R/R-4.1.2/library
Show code
knitr::opts_chunk$set(
    echo = TRUE,
    message = T,
    warning = FALSE
)
#dejo los paquetes estadísticos que voy a utilizar

if(!require(plotly)){install.packages("plotly")}
Loading required package: plotly
Loading required package: ggplot2

Attaching package: 'ggplot2'
The following object is masked from 'package:NLP':

    annotate

Attaching package: 'plotly'
The following object is masked from 'package:ggplot2':

    last_plot
The following object is masked from 'package:stats':

    filter
The following object is masked from 'package:graphics':

    layout
Show code
if(!require(lubridate)){install.packages("lubridate")}
Loading required package: lubridate

Attaching package: 'lubridate'
The following objects are masked from 'package:base':

    date, intersect, setdiff, union
Show code
if(!require(htmlwidgets)){install.packages("htmlwidgets")}
Loading required package: htmlwidgets
Show code
#if(!require(tidyverse)){install.packages("tidyverse")}
if(!require(gganimate)){install.packages("gganimate")}
Loading required package: gganimate
Show code
if(!require(readr)){install.packages("readr")}
Loading required package: readr

Attaching package: 'readr'
The following object is masked _by_ '.GlobalEnv':

    clipboard
Show code
if(!require(stringr)){install.packages("stringr")}
Loading required package: stringr
Show code
if(!require(data.table)){install.packages("data.table")}
Loading required package: data.table

Attaching package: 'data.table'
The following objects are masked from 'package:lubridate':

    hour, isoweek, mday, minute, month, quarter, second, wday,
    week, yday, year
Show code
if(!require(DT)){install.packages("DT")}
Loading required package: DT
Show code
if(!require(ggplot2)){install.packages("ggplot2")}
if(!require(lattice)){install.packages("lattice")}
Loading required package: lattice
Show code
if(!require(janitor)){install.packages("janitor")}
Loading required package: janitor

Attaching package: 'janitor'
The following objects are masked from 'package:stats':

    chisq.test, fisher.test
Show code
if(!require(rjson)){install.packages("rjson")}
Loading required package: rjson
Show code
if(!require(estimatr)){install.packages("estimatr")} 
Loading required package: estimatr
Show code
if(!require(textreg)){install.packages("textreg")}
Loading required package: textreg
Show code
if(!require(sjPlot)){install.packages("sjPlot")}
Loading required package: sjPlot
#refugeeswelcome
Show code
if(!require(foreign)){install.packages("foreign")}
Loading required package: foreign
Show code
if(!require(tsModel)){install.packages("tsModel")}
Loading required package: tsModel
Time Series Modeling for Air Pollution and Health (0.6)
Show code
if(!require(lmtest)){install.packages("lmtest")}
Loading required package: lmtest
Loading required package: zoo

Attaching package: 'zoo'
The following objects are masked from 'package:base':

    as.Date, as.Date.numeric
Show code
if(!require(Epi)){install.packages("Epi")}
Loading required package: Epi
Show code
if(!require(splines)){install.packages("splines")}
Loading required package: splines
Show code
if(!require(vcd)){install.packages("vcd")}
Loading required package: vcd
Loading required package: grid
Show code
if(!require(astsa)){install.packages("astsa")}
Loading required package: astsa
Show code
if(!require(MASS)){install.packages("MASS")}
Loading required package: MASS

Attaching package: 'MASS'
The following object is masked from 'package:plotly':

    select
Show code
if(!require(ggsci)){install.packages("ggsci")}
Loading required package: ggsci
Show code
if(!require(Hmisc)){install.packages("Hmisc")}
Loading required package: Hmisc
Loading required package: survival
Loading required package: Formula

Attaching package: 'Hmisc'
The following object is masked from 'package:tsModel':

    Lag
The following object is masked from 'package:plotly':

    subplot
The following objects are masked from 'package:base':

    format.pval, units
Show code
if(!require(compareGroups)){install.packages("compareGroups")}
Loading required package: compareGroups
Show code
if(!require(dplyr)){install.packages("dplyr")}
Loading required package: dplyr

Attaching package: 'dplyr'
The following objects are masked from 'package:Hmisc':

    src, summarize
The following object is masked from 'package:MASS':

    select
The following objects are masked from 'package:data.table':

    between, first, last
The following objects are masked from 'package:stats':

    filter, lag
The following objects are masked from 'package:base':

    intersect, setdiff, setequal, union
Show code
if(!require(ggforce)){install.packages("ggforce")}
Loading required package: ggforce
Show code
if(!require(doParallel)){install.packages("doParallel")}
Loading required package: doParallel
Loading required package: foreach
Loading required package: iterators
Loading required package: parallel
Show code
if(!require(SCtools)){install.packages("SCtools")}
Loading required package: SCtools
Loading required package: future

Attaching package: 'future'
The following object is masked from 'package:survival':

    cluster
Show code
if(!require(rio)){install.packages("rio")}
Loading required package: rio

Attaching package: 'rio'
The following object is masked from 'package:Epi':

    factorize
The following object is masked from 'package:plotly':

    export
Show code
if(!require(rbokeh)){install.packages("rbokeh")}
Loading required package: rbokeh

Attaching package: 'rbokeh'
The following object is masked from 'package:sjPlot':

    set_theme
Show code
if(!require(sqldf)){install.packages("sqldf")} 
Loading required package: sqldf
Loading required package: gsubfn
Loading required package: proto
Loading required package: RSQLite
Show code
if(!require(devtools)){install.packages("devtools")}
Loading required package: devtools
Loading required package: usethis
Show code
if(!require(ExPanDaR)){install.packages("ExPanDaR")}
Loading required package: ExPanDaR
Show code
if(!require(skimr)){install.packages("skimr")}
Loading required package: skimr
Show code
if(!require(tm)){install.packages("tm")} 
if(!require(wordcloud2)){install.packages("wordcloud2")}
Loading required package: wordcloud2
Show code
if(!require(wordcloud)){install.packages("wordcloud")}
Loading required package: wordcloud
Loading required package: RColorBrewer
Show code
if(!require(RColorBrewer)){install.packages("RColorBrewer")}
if(!require(psych)){install.packages("psych")}
Loading required package: psych

Attaching package: 'psych'
The following object is masked from 'package:Hmisc':

    describe
The following object is masked from 'package:astsa':

    scatter.hist
The following objects are masked from 'package:ggplot2':

    %+%, alpha
Show code
if(!require(ggiraph)){install.packages("ggiraph")}
Loading required package: ggiraph
Show code
if(!require(tidyverse)){install.packages("tidyverse")}
Loading required package: tidyverse
-- Attaching packages ----------------------------- tidyverse 1.3.1 --
v tibble  3.1.8     v purrr   0.3.4
v tidyr   1.2.0     v forcats 0.5.1
-- Conflicts -------------------------------- tidyverse_conflicts() --
x psych::%+%()             masks ggplot2::%+%()
x purrr::accumulate()      masks foreach::accumulate()
x psych::alpha()           masks ggplot2::alpha()
x ggplot2::annotate()      masks NLP::annotate()
x lubridate::as.difftime() masks base::as.difftime()
x dplyr::between()         masks data.table::between()
x lubridate::date()        masks base::date()
x dplyr::filter()          masks plotly::filter(), stats::filter()
x dplyr::first()           masks data.table::first()
x data.table::hour()       masks lubridate::hour()
x lubridate::intersect()   masks base::intersect()
x data.table::isoweek()    masks lubridate::isoweek()
x dplyr::lag()             masks stats::lag()
x dplyr::last()            masks data.table::last()
x data.table::mday()       masks lubridate::mday()
x data.table::minute()     masks lubridate::minute()
x data.table::month()      masks lubridate::month()
x data.table::quarter()    masks lubridate::quarter()
x data.table::second()     masks lubridate::second()
x dplyr::select()          masks MASS::select(), plotly::select()
x lubridate::setdiff()     masks base::setdiff()
x dplyr::src()             masks Hmisc::src()
x dplyr::summarize()       masks Hmisc::summarize()
x purrr::transpose()       masks data.table::transpose()
x lubridate::union()       masks base::union()
x data.table::wday()       masks lubridate::wday()
x data.table::week()       masks lubridate::week()
x purrr::when()            masks foreach::when()
x data.table::yday()       masks lubridate::yday()
x data.table::year()       masks lubridate::year()
Show code
if(!require(lubridate)){install.packages("lubridate")}
if(!require(ggfortify)){install.packages("ggfortify")}
Loading required package: ggfortify
Show code
if(!require(survminer)){install.packages("survminer")}
Loading required package: survminer
Loading required package: ggpubr

Attaching package: 'ggpubr'
The following object is masked from 'package:rbokeh':

    set_palette
Show code
if(!require(rpivotTable)){install.packages("rpivotTable")}
Loading required package: rpivotTable
Show code
if(!require(ggstatsplot)){install.packages("ggstatsplot")}
Loading required package: ggstatsplot
You can cite this package as:
     Patil, I. (2021). Visualizations with statistical details: The 'ggstatsplot' approach.
     Journal of Open Source Software, 6(61), 3167, doi:10.21105/joss.03167

Attaching package: 'ggstatsplot'
The following object is masked from 'package:future':

    %<-%
The following object is masked from 'package:data.table':

    :=
Show code
if(!require(anonymizer)){devtools::install_github("paulhendricks/anonymizer")}
Loading required package: anonymizer
Show code
if(!require(finalfit)){install.packages("finalfit")}
Loading required package: finalfit
Show code
# Calculate the number of cores
#no_cores <- detectCores() - 1
##cl<-makeCluster(no_cores)
#registerDoParallel(cl)
# sudo apt -y install libfontconfig1-dev
# sudo apt-get install libxml2-dev
#Sys.setlocale(category = "LC_ALL", locale = "english")
#locale("es", decimal_mark = ",")


find_type <- function(x) {
  case_when(
    is.factor(x) ~ "factor",
    is.character(x) ~ "character",
    is.numeric(x) ~ "numeric",
    TRUE ~ "not sure"
  )
}

permute_icc <- function(x, y, n = 99) {
  actual <- ICCbare(x, y)
  nulls <- vector(length = length(n), mode = "numeric")
  for(i in seq_along(1:n)) {
    scrambled_x <- sample(x, length(x), replace = F)
    nulls[i] <- ICCbare(scrambled_x, y)
  }
  (sum(abs(nulls) > ifelse(actual > 0, actual, -actual)) + 1) / (n+1)
}

permute_tau <- function(x, y, n = 99) {
  actual <- GKtau(x, y)$tauxy
  nulls <- vector(length = length(n), mode = "numeric")
  for(i in seq_along(1:n)) {
    scrambled_x <- sample(x, length(x), replace = F)
    nulls[i] <- GKtau(scrambled_x, y)$tauxy
  }
  (sum(abs(nulls) > ifelse(actual > 0, actual, -actual)) + 1) / (n+1)
}

# to do:
## get p-values

eda <- function(x, plot = FALSE) {
  
  x <- as.data.frame(x)
  
  num_rows <- ncol(x)^2 - ncol(x)
  df <- tibble(var1 = vector(mode = "character", length = 1),
               var2 = vector(mode = "character", length = 1),
               statistic = vector(mode = "character", length = 1),
               value = vector(mode = "double", length = 1),
               p_value = vector(mode = "double", length = 1),
               n = vector(mode = "integer", length = 1))
  
  for(i in seq_along(1:ncol(x)))
    for(j in seq_along(1:ncol(x))) {
      if(i < j){
        # get type of columns i and j
        var_1_type <- find_type(x[,i])
        var_2_type <- find_type(x[,j])
        #print(paste("var1 type: ", var_1_type, "\nvar2 type: ", var_2_type, "\n\n"))
        
        x1 <- x[,i]
        x2 <- x[,j]
        
        # remove NAs for simplicity
        if(any(is.na(x1))){
          # get NA indicies
          ind <- which(is.na(x1))
          x1 <- x1[-ind]
          x2 <- x2[-ind]
        }
        
        if(any(is.na(x2))){
          # get NA indicies
          ind <- which(is.na(x2))
          x1 <- x1[-ind]
          x2 <- x2[-ind]
        }
        
        # make sure x1 and x2 are the same length
        stopifnot(length(x1) == length(x2))
        
        n <- length(x1)
        
        if(var_1_type == "numeric" & var_2_type == "numeric") {
          # run a correlation
          result <- cor.test(x1, x2)
          df <- add_row(df, 
                        var1 = names(x)[i],
                        var2 = names(x)[j],
                        statistic = "r",
                        value = result$estimate,
                        p_value = result$p.value,
                        n = n
          )
        } else if(var_1_type == "factor" & var_2_type == "numeric") {
          # run an ANOVA or t-test, depending on number of levels
          num_levels <- length(levels(x1))
          require(ICC)
          result <- ICCbare(x1, x2)
          p <- permute_icc(x1, x2)
          df <- add_row(df, 
                        var1 = names(x)[i],
                        var2 = names(x)[j],
                        statistic = "ICC",
                        value = result,
                        p_value = p,
                        n = n
          )
        } else if(var_1_type == "numeric" & var_2_type == "factor") {
          # run an ANOVA or t-test, depending on number of levels
          num_levels <- length(levels(x2))
          require(ICC)
          result <- ICCbare(x2, x1)
          p <- permute_icc(x2, x1)
          df <- add_row(df, 
                        var1 = names(x)[i],
                        var2 = names(x)[j],
                        statistic = "ICC",
                        value = result,
                        p_value = p,
                        n = n
          )
        } else if(var_1_type == "factor" & var_2_type == "factor") {
          require("GoodmanKruskal")
          # compute the GKtau statistic
          stat1 <- GKtau(x1, x2)$tauxy
          stat2 <- GKtau(x1, x2)$tauyx
          p1 <- permute_tau(x1, x2)
          p2 <- permute_tau(x2, x1)
          df <- add_row(df, 
                        var1 = names(x)[i],
                        var2 = names(x)[j],
                        statistic = "tau",
                        value = stat1,
                        p_value = p1,
                        n = n
          )
          df <- add_row(df, 
                        var1 = names(x)[j],
                        var2 = names(x)[i],
                        statistic = "tau",
                        value = stat2,
                        p_value = p2,
                        n = n
          )
        } else{
          # return an empty row
          df <- add_row(df, 
                        var1 = names(x)[i],
                        var2 = names(x)[j],
                        statistic = NA_character_,
                        value = NA_integer_,
                        p_value = NA_real_,
                        n = n
          )
        }
      }
    }
  if(plot == TRUE) {
    df[-1,] %>%
      filter(!is.na(value)) %>%
      unite(variables, var1, var2, sep = " by ") %>%
      mutate(`possibly significant` = if_else(p_value < 0.05, "significant", "NS")) %>%
      ggplot(aes(y = value, x = reorder(variables, value), color = `possibly significant`)) +
      geom_point() +
      coord_flip() +
      facet_wrap(~statistic, scales = "free") +
      theme_minimal() +
      scale_color_manual(values = c("#37454B", "#E84F22"))
  } else{
    df[-1,]
  }
  
}
  m <- list(
    l = 100,
    r = 50,
    b = 0,
    t = 0,
    pad = 4
  )
check_code <- function(expr, available){
  if(available){
    eval(parse(text = expr))
  } else {
    expr
  }
}
Show code
invisible(c("Compromiso Sostenible", "Desarrollo Profesional", "Liderazgo",  "Entorno de Trabajo", "Covid", "Intención de permanecer en la Compañía"­a""Comunicación"ón"Gestión del Desempeño"peÃ"Compensación y Beneficios"fic"Supervisor Inmediato"))iato"))
#`

names_df_ori<-encuesta %>%  names()
names_df_proc<-encuesta %>% janitor::clean_names() %>% names()


names_df2_ori<-encuesta2 %>%  names()
names_df2_proc<-encuesta2 %>% janitor::clean_names() %>% names()


Fecha: 08 septiembre, 2022

Obtención de Base de Datos

En primer lugar, bajamos los datos y utilizamos un nombre para las columnas más facil de procesar por los distintos programas informáticos de análisis estadístico.


Show code
#Ver las etiquetas y las variables
#Ver als etiquetas y las variables
#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
#fecha de respuesta
names_df_proc[7]<-names_df_proc[8]
names_df_ori[7]<-names_df_ori[8]

names_df_proc[8]<-"Función"
names_df_ori[8]<-"Función"

for (i in 1:length(names_df_ori)){
     attr(encuesta[[i]], "label")<- names_df_ori[[i]]
}

for (i in 1:length(names_df2_ori)){
     attr(encuesta2[[i]], "label")<- names_df2_ori[[i]]
}

for (i in 1:length(names_df_ori)){
     colnames(encuesta)[[i]]<- names_df_proc[[i]]
}

for (i in 1:length(names_df2_ori)){
     colnames(encuesta2)[[i]]<- names_df2_proc[[i]]
}


# for (i in 1:length(names_df_ori)){
# if(attributes(names_df_ori)$name[i]=="proporcion") 
# attributes(encuesta)$variable.labels[i]<-"Proporción de guaguas en el determinado sexo"
# if(attributes(names_df_ori)$name[i]=="sexo") 
# attributes(encuesta)$variable.labels[i]<-"Sexo"
# }
# 

colnames_encuesta<- c("cor_ele","nombre","tel","fecha","correo_val","correo_val_cor","fecha_resp","funcion","a_dir","b_ger", "c_area", paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3), "enps_lugar_trab","enps_prod_serv","obs_gen","sexo")

dt_names<-
dplyr::bind_cols(original=names_df_ori,limpiada=names_df_proc,etiqueta=colnames_encuesta)

dt_names2<-
dplyr::bind_cols(original=names_df2_ori,limpiada=names_df2_proc) %>% 
  dplyr::left_join(dt_names, by=c("limpiada")) %>% 
  dplyr::mutate(etiqueta= dplyr::case_when(
    limpiada=="ingresa_tu_correo_electronico_verisure"~"correo_val_cor",
    limpiada=="indica_el_area_a_la_que_perteneces"~"c_area",
    limpiada=="indica_la_direccion_a_la_que_perteneces"~"a_dir",
    limpiada=="indica_a_que_categoria_de_funciones_perteneces"~"funcion",
    limpiada=="indica_tu_antiguedad_trabajando_dentro_de_verisure"~"antiguedad",
    limpiada=="que_aspectos_crees_que_la_empresa_deberia_cambiar_opcional"~"obs_gen",
    limpiada=="recibo_feedback_de_manera_constante_que_me_ayuda_a_mejorar_y_a_crecer_en_la_organizacion"~"ges_des_1",
    nchar(etiqueta)<2~ limpiada,
    is.na(etiqueta)~ limpiada,
    T~etiqueta
  ))
# fecha
# hora
# completada_en
# fuente

colnames(encuesta)<-colnames_encuesta
colnames(encuesta2)<-dt_names2$etiqueta

#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#


Posteriormente, le añadimos los nombres de las variables a la base de datos.


Show code
  for (i in 1:length(names_df_proc)){
          attributes(encuesta)$"variable.labels"[i]<- names_df_ori[i] 
  }

  for (i in 1:length(names(encuesta2))){
          attributes(encuesta2)$"variable.labels"[i]<- names_df2_ori[i] 
  }


Las variables fueron recodificadas y estandarizadas de acuerdo a cómo se exhiben en el cuestionario, incluyendo las etiquetas que no se encuentran presentes debido a que nadie ha contestado en alguna de esas categorías.


Show code
#funcion  a_dir b_ger c_area
encuesta %>%
  dplyr::mutate(across(c("funcion","a_dir", "b_ger","c_area"), ~dplyr::case_when(as.character(.)=="#ERROR!"~NA_character_,as.character(.)=="#N/A"~NA_character_,as.character(.)=="#REF!"~NA_character_,as.character(.)=="NA"~NA_character_,T~as.character(.)))) %>% 
  #dplyr::mutate(cons_inf=ifelse(grepl("acepto participar",as.character(cons_inf)),"Sí","No")) %>% 
  dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3)), ~stringr::str_remove(stringr::str_trim(.), "\\.$"))) %>% 
  dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3)), ~stringr::str_remove(stringr::str_trim(as.character(.)), "\\.$"))) %>% 
    dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3)), ~factor(parse_factor(as.character(.), levels=c("1","2","3","4","5"), trim_ws=T, include_na =F), labels=c("Muy en desacuerdo","En desacuerdo","Ni de acuerdo ni en desacuerdo", "De acuerdo", "Muy de acuerdo"), ordered=T))) %>% 
  dplyr::mutate(sexo=factor(sexo)) %>% 
    assign("encuesta_rec",.,envir=.GlobalEnv)

#En esta empresa no se tolera el bajo desempeño ---> No está

#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_

encuesta2 %>%
  dplyr::mutate(across(c("funcion","a_dir", "c_area"), ~dplyr::case_when(as.character(.)=="#ERROR!"~NA_character_,as.character(.)=="#N/A"~NA_character_,as.character(.)=="#REF!"~NA_character_,as.character(.)=="NA"~NA_character_,T~as.character(.)))) %>% 
  #dplyr::mutate(cons_inf=ifelse(grepl("acepto participar",as.character(cons_inf)),"Sí","No")) %>% 
  dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("ges_des_",1)), ~stringr::str_remove(stringr::str_trim(.), "\\.$"))) %>% 
  dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("ges_des_",1)), ~stringr::str_remove(stringr::str_trim(as.character(.)), "\\.$"))) %>% 
    dplyr::mutate(across(c(paste0("comp_sos_",1:9), paste0("ges_des_",1)), ~factor(parse_factor(as.character(.), trim_ws=T, include_na =F), levels=c("En desacuerdo", "Tiendo a estar en desacuerdo","Neutral", "Tiendo a estar de acuerdo", "De Acuerdo"), ordered=T))) %>% 
  #labels=c("Muy en desacuerdo","En desacuerdo","Ni de acuerdo ni en desacuerdo", "De acuerdo", "Muy de acuerdo"), ordered=T))) %>%
    dplyr::mutate(fecha_nac= as.Date(as.character(fecha_nac)),fecha_ing= as.Date(as.character(fecha_ing)), edad=round(as.numeric(fecha-fecha_nac)/365.25,0)) %>% 
    dplyr::mutate(sexo=factor(sexo)) %>%
    dplyr::mutate(antiguedad=factor(antiguedad, levels=c("Menos de 3 meses", "Entre 3 meses y 1 año", "Entre 1 y 2 años", "Entre 2 y 5 años", "Entre 5 y 10 años", "Más de 10 años"))) %>% 
    dplyr::mutate(dias_despues=as.numeric(fecha-as.Date("2022-07-25")),) %>% 
  #recodificar
  dplyr::mutate(across(c(paste0("comp_sos_",1:9)), ~dplyr::case_when(.=="Tiendo a estar de acuerdo"~1, .=="De Acuerdo"~1, T~ 0),.names = "{col}_rec1"))%>%
  dplyr::mutate(compromiso_sostenible_ags= base::rowSums(dplyr::select(.,ends_with("_rec1"))))%>%  
      assign("encuesta2_rec",.,envir=.GlobalEnv)

         #dplyr::mutate(dg_total_cie_10 = base::rowSums(dplyr::select(., dg_diagnostico_trs_psiquiatrico_cie_10, dg_x2_diagnostico_trs_psiquiatrico_cie_10, dg_x3_diagnostico_trs_psiquiatrico_cie_10)))%>%


Exploración de Datos

Show code
options(knitr.kable.NA = '')

var_lbls_no_char<-
    data.frame(nam=attributes(encuesta_rec)$"names",
               var_lab=attributes(encuesta_rec)$"variable.labels") %>% 
      dplyr::right_join(encuesta_rec%>% dplyr::select(-(cor_ele:fecha_resp))%>%
       dplyr::select(-where(is.character)) %>% names() %>% data.frame(), by=c("nam"="."))

skimr_encuesta_rec<-
encuesta_rec%>% dplyr::select(-(cor_ele:fecha_resp))%>%
   dplyr::select(-where(is.character)) %>%
  skimr::skim() %>% 
  tibble::as_tibble() %>%
  dplyr::mutate(complete_rate=scales::percent(complete_rate)) %>% 
  dplyr::select(-numeric.hist)

skimr_encuesta_rec %>% 
  dplyr::left_join(var_lbls_no_char, by=c("skim_variable"="nam")) %>% 
  dplyr::select(skim_type,skim_variable,var_lab, everything()) %>% 
  knitr::kable(.,format = "html", digits=2, format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Resumen de Variables"),#,
               col.names = c("Tipo","Variable","Etiqueta","Perdidos","% Completos",
                            "Ordenado","Valores únicos","Más frecuentes","Media", "Desv.Est.","Min","Perc. 25", "Mediana", "Perc. 75", "Max"),
align =c("c","l",rep('c', 101))) %>%
  kableExtra::kable_classic(bootstrap_options = c("striped", "hover"),font_size = 9) %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 1: Resumen de Variables
Tipo Variable Etiqueta Perdidos % Completos Ordenado Valores únicos Más frecuentes Media Desv.Est. Min Perc. 25 Mediana Perc. 75 Max
factor comp_sos_1 Entiendo cómo mi trabajo contribuye a la consecución de los objetivos de esta empresa 0 100.00% TRUE 5 Muy: 458, De : 114, Ni : 19, Muy: 5
factor comp_sos_2 Recomendaría esta empresa como un buen lugar para trabajar 0 100.00% TRUE 5 Muy: 385, De : 149, Ni : 47, En : 10
factor comp_sos_3 Estoy dispuesto a realizar un esfuerzo mayor del que cabría esperar normalmente para contribuir al éxito de esta empresa 0 100.00% TRUE 5 Muy: 419, De : 146, Ni : 21, En : 7
factor comp_sos_4 Dispongo de las herramientas y los recursos necesarios para lograr la excelencia en el rendimiento 0 100.00% TRUE 5 Muy: 296, De : 202, Ni : 64, En : 29
factor comp_sos_5 Sé lo que se espera de mí en mi trabajo 0 100.00% TRUE 5 Muy: 421, De : 152, Ni : 17, En : 6
factor comp_sos_6 Mi trabajo me ofrece la oportunidad de enfrentarme a nuevos desafíos 0 100.00% TRUE 5 Muy: 372, De : 155, Ni : 50, En : 14
factor comp_sos_7 Las personas con las que trabajo por lo general se llevan bien entre sí 0 100.00% TRUE 5 Muy: 338, De : 178, Ni : 58, En : 18
factor comp_sos_8 Mi trabajo me aporta una sensación de realización personal 0 100.00% TRUE 5 Muy: 346, De : 168, Ni : 55, En : 19
factor comp_sos_9 Puedo mantener el nivel de energía que necesito durante toda la jornada laboral 0 100.00% TRUE 5 Muy: 239, De : 207, Ni : 84, En : 47
factor dllo_prof_1 Creo que permanecer en esta empresa es lo mejor para mí desde el punto de vista profesional y personal 0 100.00% TRUE 5 Muy: 336, De : 181, Ni : 55, En : 14
factor dllo_prof_2 La formación que he recibido me ha preparado adecuadamente para el trabajo que hago 0 100.00% TRUE 5 Muy: 323, De : 203, Ni : 47, En : 17
factor dllo_prof_3 Dispongo de suficientes oportunidades de recibir formación para mejorar mis habilidades en mi trabajo actual 0 100.00% TRUE 5 Muy: 293, De : 195, Ni : 71, En : 26
factor lid_1 Soy optimista respecto al futuro de esta empresa 0 100.00% TRUE 5 Muy: 449, De : 117, Ni : 22, En : 7
factor lid_2 Tengo confianza en las decisiones que toma el equipo directivo de esta empresa 0 100.00% TRUE 5 Muy: 352, De : 157, Ni : 55, En : 24
factor ent_trab_1 Mi responsable directo se preocupa realmente por mí como empleado 0 100.00% TRUE 5 Muy: 382, De : 136, Ni : 46, En : 19
factor ent_trab_2 Me siento cómodo con los valores de esta empresa 0 100.00% TRUE 5 Muy: 387, De : 149, Ni : 47, En : 8
factor covid_1 Confío en que nuestros líderes respondan eficazmente a los desafíos de negocio derivados del coronavirus. 0 100.00% TRUE 5 Muy: 345, De : 161, Ni : 59, En : 19
factor covid_2 Siento que la compañía me está protegiendo durante este tiempo. 0 100.00% TRUE 5 Muy: 336, De : 148, Ni : 67, En : 30
factor covid_3 Confío en nuestros líderes para proteger la salud y el bienestar de los empleados en este momento. 0 100.00% TRUE 5 Muy: 327, De : 158, Ni : 65, En : 30
factor covid_4 Esta organización está haciendo un excelente trabajo manteniendo a los empleados informados sobre los asuntos importantes que nos afectan durante este tiempo. 0 100.00% TRUE 5 Muy: 350, De : 160, Ni : 59, En : 21
factor intencion_1 Considero que seguiré trabajando en la empresa en los próximos dos años 0 100.00% TRUE 5 Muy: 414, De : 119, Ni : 42, En : 16
factor com_1 En esta empresa se hacen esfuerzos suficientes por conocer las opiniones e ideas de los empleados 0 100.00% TRUE 5 Muy: 274, De : 193, Ni : 80, En : 29
factor com_2 Tengo acceso a la información necesaria para hacer bien mi trabajo 0 100.00% TRUE 5 Muy: 348, De : 184, Ni : 42, En : 16
factor ges_des_1 Recibo feedback sobre mi rendimiento con regularidad. 0 100.00% TRUE 5 Muy: 322, De : 167, Ni : 62, En : 32
factor ges_des_2 Según mi experiencia, en esta empresa se reconoce la excelencia en el rendimiento. 0 100.00% TRUE 5 Muy: 318, De : 188, Ni : 58, En : 18
factor comp_ben_1 El programa de beneficios sociales de esta organización satisface mis necesidades 0 100.00% TRUE 5 Muy: 246, De : 202, Ni : 111, En : 25
factor comp_ben_2 Creo que mi remuneración es competitiva si la comparamos con la de personas que desempeñan un trabajo similar en otras empresas 0 100.00% TRUE 5 Muy: 242, De : 186, Ni : 91, En : 55
factor superv_1 Mi responsable directo hace una buena labor fomentando el trabajo en equipo 0 100.00% TRUE 5 Muy: 354, De : 167, Ni : 45, En : 19
factor superv_2 Mi responsable directo me reconoce el trabajo bien hecho 0 100.00% TRUE 5 Muy: 380, De : 159, Ni : 34, En : 13
factor superv_3 Mi responsable directo fomenta el desarrollo de los empleados 0 100.00% TRUE 5 Muy: 370, De : 155, Ni : 48, Muy: 13
factor sexo sexo 2 99.67% FALSE 2 M: 378, F: 218
numeric enps_lugar_trab ¿Recomendaría esta empresa como lugar de trabajo a sus colegas, familiares, amigos o vecinos? 0 100.00% 8.81 1.92 0 8 10 10 10
numeric enps_prod_serv ¿Recomendaría los productos y servicios de esta empresa a sus colegas, familiares, amigos o vecinos? 0 100.00% 9.03 1.65 0 9 10 10 10
Show code
options(knitr.kable.NA = '')

for (i in 1:length(names(encuesta2_rec))){
if(attributes(encuesta2_rec)$name[i]=="edad")
attributes(encuesta2_rec)$variable.labels[i]<-"Edad"
if(attributes(encuesta2_rec)$name[i]=="sexo")
attributes(encuesta2_rec)$variable.labels[i]<-"Sexo"
if(attributes(encuesta2_rec)$name[i]=="dias_despues")
attributes(encuesta2_rec)$variable.labels[i]<-"Días en que contesta desde después del 07-25"
if(attributes(encuesta2_rec)$name[i]=="compromiso_sostenible_ags")
attributes(encuesta2_rec)$variable.labels[i]<-"Suma de recodificados de Compromiso Sostenible (ags)"
}

var_lbls_no_char2<-
    data.frame(nam=attributes(encuesta2_rec)$"names",
               var_lab=attributes(encuesta2_rec)$"variable.labels") %>% 
      dplyr::right_join(encuesta2_rec%>% dplyr::select(-(hora:correo_val_cor))%>%
       dplyr::select(-where(is.character)) %>% names() %>% data.frame(), by=c("nam"="."))

skimr_encuesta2_rec<-
encuesta2_rec%>% dplyr::select(-(hora:correo_val_cor))%>%
   dplyr::select(-where(is.character)) %>%
  skimr::skim() %>% 
  tibble::as_tibble() %>%
  dplyr::mutate(complete_rate=scales::percent(complete_rate)) %>% 
  dplyr::select(-numeric.hist)

skimr_encuesta2_rec %>% 
  dplyr::left_join(var_lbls_no_char2, by=c("skim_variable"="nam")) %>% 
  dplyr::select(skim_type,skim_variable,var_lab, everything()) %>% 
  knitr::kable(.,format = "html", digits=2, format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Resumen de Variables"),#,
               col.names = c("Tipo","Variable","Etiqueta","Perdidos","% Completos",
                             "Fecha (min)", "Fecha (max)", "Fecha (mediana)", "Fecha (únicos)",
                            "Ordenado","Valores únicos","Más frecuentes","Lógica (Promedio)","Lógica (Recuento)","Promedio", "Desv.Est.","Min","Perc. 25", "Mediana", "Perc. 75", "Max"),
align =c("c","l",rep('c', 101))) %>%
  kableExtra::kable_classic(bootstrap_options = c("striped", "hover"),font_size = 9) %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 2: Resumen de Variables
Tipo Variable Etiqueta Perdidos % Completos Fecha (min) Fecha (max) Fecha (mediana) Fecha (únicos) Ordenado Valores únicos Más frecuentes Lógica (Promedio) Lógica (Recuento) Promedio Desv.Est. Min Perc. 25 Mediana Perc. 75 Max
Date fecha Fecha 0 100.00% 2022-07-25 2022-09-01 2022-08-16 24
Date fecha_ing fecha_ing 1 99.87% 2009-10-26 2022-08-01 2021-03-27 301
Date fecha_nac fecha_nac 1 99.87% 1956-12-26 2002-08-12 1987-11-23 745
factor antiguedad Indica tu antigüedad trabajando dentro de Verisure 0 100.00% FALSE 6 Ent: 317, Ent: 189, Ent: 163, Ent: 99
factor comp_sos_1 Entiendo cómo mi trabajo contribuye a la consecución de los objetivos de esta empresa. 0 100.00% TRUE 5 De : 674, Tie: 79, Neu: 21, Tie: 11
factor comp_sos_2 Recomendaría esta empresa como un buen lugar para trabajar. 0 100.00% TRUE 5 De : 490, Tie: 159, Neu: 88, En : 31
factor comp_sos_5 Sé lo que se espera de mi en mi trabajo. 0 100.00% TRUE 5 De : 613, Tie: 118, Neu: 36, Tie: 14
factor comp_sos_4 Dispongo de las herramientas y los recursos necesarios para lograr la excelencia en el rendimiento. 0 100.00% TRUE 5 De : 424, Tie: 224, Neu: 94, Tie: 30
factor comp_sos_3 Estoy dispuesto a realizar un esfuerzo mayor del que cabría esperar normalmente para contribuir al éxito de esta empresa. 0 100.00% TRUE 5 De : 586, Tie: 132, Neu: 51, En : 12
factor comp_sos_6 Mi trabajo me ofrece la oportunidad de enfrentarme a nuevos desafíos. 0 100.00% TRUE 5 De : 523, Tie: 149, Neu: 76, En : 22
factor comp_sos_7 Las personas con las que trabajo por lo general se llevan bien entre sí. 0 100.00% TRUE 5 De : 470, Tie: 191, Neu: 83, Tie: 25
factor comp_sos_8 Mi trabajo me aporta una sensación de realización personal. 0 100.00% TRUE 5 De : 442, Tie: 188, Neu: 106, Tie: 27
factor comp_sos_9 Puedo mantener el nivel de energía que necesito durante toda la jornada laboral. 0 100.00% TRUE 5 De : 310, Tie: 250, Neu: 130, Tie: 64
factor ges_des_1 Recibo feedback de manera constante, qué me ayuda a mejorar y a crecer en la organización. 0 100.00% TRUE 5 De : 415, Tie: 205, Neu: 97, Tie: 39
factor sexo Sexo 1 99.87% FALSE 2 M: 457, F: 331
logical enps_0_6 enps 0-6 789 0.00% :
logical enps_7_8 enps 7-8 789 0.00% :
numeric enps_lugar_trab ¿Recomendaría esta empresa como lugar de trabajo a sus colegas, familiares, amigos o vecinos? 0 100.00% 8.24 2.48 0 7 9 10 10
numeric compromiso_sostenible Compromiso Sostenible 788 0.13% 98.00 98 98 98 98 98
numeric enps_9_10 enps 9-10 788 0.13% 1.00 1 1 1 1 1
numeric edad Edad 1 99.87% 35.96 8.23 20 30 35 41 66
numeric dias_despues Días en que contesta desde después del 07-25 0 100.00% 22.48 6.03 0 17 22 28 38
numeric comp_sos_1_rec1 0 100.00% 0.95 0.21 0 1 1 1 1
numeric comp_sos_2_rec1 0 100.00% 0.82 0.38 0 1 1 1 1
numeric comp_sos_3_rec1 0 100.00% 0.91 0.29 0 1 1 1 1
numeric comp_sos_4_rec1 0 100.00% 0.82 0.38 0 1 1 1 1
numeric comp_sos_5_rec1 0 100.00% 0.93 0.26 0 1 1 1 1
numeric comp_sos_6_rec1 0 100.00% 0.85 0.36 0 1 1 1 1
numeric comp_sos_7_rec1 0 100.00% 0.84 0.37 0 1 1 1 1
numeric comp_sos_8_rec1 0 100.00% 0.80 0.40 0 1 1 1 1
numeric comp_sos_9_rec1 0 100.00% 0.71 0.45 0 0 1 1 1
numeric compromiso_sostenible_ags Suma de recodificados de Compromiso Sostenible (ags) 0 100.00% 7.63 2.11 0 7 9 9 9
Show code
rbind(
cbind(cat="Fecha de respuesta (2022)",
encuesta2_rec %>% 
  dplyr::summarise(min = min(fecha, na.rm=T),
                   p025=as.Date(quantile(as.numeric(fecha), .025, na.rm=T),origin="1970-01-01"),
                   p25=as.Date(quantile(as.numeric(fecha), .25, na.rm=T),origin="1970-01-01"),
                   p50=as.Date(quantile(as.numeric(fecha), .5, na.rm=T),origin="1970-01-01"),
                   p75=as.Date(quantile(as.numeric(fecha), .75, na.rm=T),origin="1970-01-01"),
                   p975=as.Date(quantile(as.numeric(fecha), .975, na.rm=T),origin="1970-01-01"),
            max = max(fecha, na.rm=T))),
cbind(cat="Fecha de ingreso a la empresa (2022)",
encuesta2_rec %>% 
  dplyr::summarise(min = min(fecha_ing, na.rm=T),
                   p025=as.Date(quantile(as.numeric(fecha_ing), .025, na.rm=T),origin="1970-01-01"),
                   p25=as.Date(quantile(as.numeric(fecha_ing), .25, na.rm=T),origin="1970-01-01"),
                   p50=as.Date(quantile(as.numeric(fecha_ing), .5, na.rm=T),origin="1970-01-01"),
                   p75=as.Date(quantile(as.numeric(fecha_ing), .75, na.rm=T),origin="1970-01-01"),
                   p975=as.Date(quantile(as.numeric(fecha_ing), .975, na.rm=T),origin="1970-01-01"),
            max = max(fecha_ing, na.rm=T))),
cbind(cat="Fecha de entrega",
encuesta_rec %>% 
  dplyr::summarise(min = as.Date(min(unclass(as.Date.POSIXct(fecha)), na.rm=T), origin = "1970-01-01"),
                   p025=as.Date(quantile(unclass(as.Date.POSIXct(fecha)), .025, na.rm=T), origin = "1970-01-01"),
                   p25=as.Date(quantile(unclass(as.Date.POSIXct(fecha)), .25, na.rm=T), origin = "1970-01-01"),
                   p50=as.Date(quantile(unclass(as.Date.POSIXct(fecha)), .5, na.rm=T), origin = "1970-01-01"),
                   p75=as.Date(quantile(unclass(as.Date.POSIXct(fecha)), .75, na.rm=T), origin = "1970-01-01"),
                   p975=as.Date(quantile(unclass(as.Date.POSIXct(fecha)), .975, na.rm=T), origin = "1970-01-01"),
            max =  as.Date(max(unclass(as.Date.POSIXct(fecha)), na.rm=T), origin = "1970-01-01")))
) %>% 
knitr::kable(format="markdown",caption= "Resumen de fechas")
Table 3: Resumen de fechas
cat min p025 p25 p50 p75 p975 max
Fecha de respuesta (2022) 2022-07-25 2022-08-08 2022-08-11 2022-08-16 2022-08-22 2022-08-30 2022-09-01
Fecha de ingreso a la empresa (2022) 2009-10-26 2013-08-01 2018-12-15 2021-03-27 2022-01-03 2022-05-09 2022-08-01
Fecha de entrega 2021-07-12 2021-07-12 2021-07-22 2021-07-27 2021-07-30 2021-08-03 2021-08-04


Show code
# paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3)

p<-
  encuesta_rec %>% 
  dplyr::mutate(across(paste0("comp_sos_",1:9),~as.numeric(.),.names="num_{col}")) %>% 
  dplyr::mutate(ptjes_comp_sos= base::rowSums(dplyr::select(.,paste0("num_","comp_sos_",1:9)),na.rm=T)) %>% 
  ggplot(aes(x=ptjes_comp_sos), alpha=.7)+
  sjPlot::theme_sjplot2() +
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Nota. Puntajes cero se deben a valores perdidos")+
  geom_histogram(bins=10)
#  scale_y_continuous(breaks=seq(0,200,25))+
#  scale_x_continuous(breaks=seq(0,60,10))+
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 1: Histograma de Frecuencias, Puntajes Ítems de Compromiso Sostenible

Show code
# paste0("comp_sos_",1:9), paste0("dllo_prof_",1:3), paste0("lid_",1:2), paste0("ent_trab_",1:2),paste0("covid_",1:4), paste0("intencion_",1), paste0("com_",1:2), paste0("ges_des_",1:2), paste0("comp_ben_",1:2), paste0("superv_",1:3)

p2022<-
  encuesta2_rec %>% 
  dplyr::mutate(across(paste0("comp_sos_",1:9),~as.numeric(.),.names="num_{col}")) %>% 
  dplyr::mutate(ptjes_comp_sos= base::rowSums(dplyr::select(.,paste0("num_","comp_sos_",1:9)),na.rm=T)) %>% 
  ggplot(aes(x=ptjes_comp_sos), alpha=.7)+
  sjPlot::theme_sjplot2() +
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Nota. Puntajes cero se deben a valores perdidos")+
  geom_histogram(bins=10)
#  scale_y_continuous(breaks=seq(0,200,25))+
#  scale_x_continuous(breaks=seq(0,60,10))+
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p2022)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 2: Histograma de Frecuencias, Puntajes Ítems de Compromiso Sostenible (2022)

Show code
p2<-
  encuesta_rec %>% 
  dplyr::mutate(across(paste0("dllo_prof_",1:3),~as.numeric(.),.names="num_{col}")) %>% 
  dplyr::mutate(ptjes_dllo_prof= base::rowSums(dplyr::select(.,paste0("num_","dllo_prof_",1:3)),na.rm=T)) %>% 
  ggplot(aes(x=ptjes_dllo_prof), alpha=.7)+
  sjPlot::theme_sjplot2() +
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Nota. Puntajes cero se deben a valores perdidos")+
  geom_histogram(bins=10)
#  scale_y_continuous(breaks=seq(0,200,25))+
#  scale_x_continuous(breaks=seq(0,60,10))+
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p2)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 3: Histograma de Frecuencias, Puntajes Ítems de Desarrollo Profesional

Show code
p3<-
    encuesta_rec %>% 
  dplyr::mutate(across(paste0("covid_",1:4),~as.numeric(.),.names="num_{col}")) %>% 
  dplyr::mutate(ptjes_covid= base::rowSums(dplyr::select(.,paste0("num_","covid_",1:4)),na.rm=T)) %>% 
  ggplot(aes(x=ptjes_covid), alpha=.7)+
  sjPlot::theme_sjplot2() +
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Nota. Puntajes cero se deben a valores perdidos")+
  geom_histogram(bins=10)
  #scale_y_continuous(breaks=seq(0,100,5))+
  #scale_x_continuous(breaks=seq(0,60,10))
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p3)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 4: Histograma de Frecuencias, Puntajes Ítems de COVID-19

Show code
p4<-
    encuesta_rec %>% 
  dplyr::mutate(across(paste0("superv_",1:3),~as.numeric(.),.names="num_{col}")) %>% 
  dplyr::mutate(ptjes_covid= base::rowSums(dplyr::select(.,paste0("num_","superv_",1:3)),na.rm=T)) %>% 
  ggplot(aes(x=ptjes_covid), alpha=.7)+
  sjPlot::theme_sjplot2() +
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Nota. Puntajes cero se deben a valores perdidos")+
  geom_histogram(bins=10)
  #scale_y_continuous(breaks=seq(0,100,5))+
  #scale_x_continuous(breaks=seq(0,60,10))
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p4)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 5: Histograma de Frecuencias, Puntajes Ítems de Supervisor Inmediato


Perdidas

Contamos los datos perdidos por cada usuario en cada variable.


Show code
encuesta_rec_miss<-
encuesta_rec %>%
  rowwise %>%
  dplyr::mutate_at(.vars = vars(comp_sos_1:enps_prod_serv), # si fuera de SPSS, debiese ser p47_demo_medio_transp_otr
                   .funs = list(`nas`=~ifelse(is.na(.), 1, 0))) %>% 
  dplyr::ungroup() %>% 
  rowwise %>%
  dplyr::mutate(suma_parcial = sum(c_across(comp_sos_1_nas:enps_prod_serv_nas))) %>% #si fuera SPSS, debiese ser p47_demo_medio_transp_otr_nas
  dplyr::select(-ends_with("_nas")) %>% 
  dplyr::ungroup()

encuesta_rec$suma_parcial<-encuesta_rec_miss$suma_parcial


#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:
#Agregar etiquetas
for (i in 1:length(encuesta_rec_miss)){
if(attributes(encuesta_rec_miss)$name[i]=="suma_parcial") {
attributes(encuesta_rec)$variable.labels[i]<-"Suma de Valores Perdidos en Variables de Interés"
}
#attr()
}

encuesta2_rec_miss<-
encuesta2_rec %>%
  rowwise %>%
  dplyr::mutate_at(.vars = vars(comp_sos_1:enps_lugar_trab), # si fuera de SPSS, debiese ser p47_demo_medio_transp_otr
                   .funs = list(`nas`=~ifelse(is.na(.), 1, 0))) %>% 
  dplyr::ungroup() %>% 
  rowwise %>%
  dplyr::mutate(suma_parcial = sum(c_across(comp_sos_1_nas:enps_lugar_trab_nas))) %>% #si fuera SPSS, debiese ser p47_demo_medio_transp_otr_nas
  dplyr::select(-ends_with("_nas")) %>% 
  dplyr::ungroup()

encuesta2_rec$suma_parcial<-encuesta2_rec_miss$suma_parcial


#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:
#Agregar etiquetas
for (i in 1:length(encuesta2_rec_miss)){
if(attributes(encuesta2_rec_miss)$name[i]=="suma_parcial") {
attributes(encuesta2_rec)$variable.labels[i]<-"Suma de Valores Perdidos en Variables de Interés"
}
#attr()
}


Vemos un histograma de frecuencia de datos perdidos por usuario.


Show code
p4<-ggplot(encuesta_rec_miss,aes(x=suma_parcial), alpha=.7)+
  geom_histogram_interactive(bins=10)+
  #   geom_vline(aes(xintercept=30), color="darkred", linetype="dashed")+
  #   geom_vline(aes(xintercept=45), color="darkmagenta", linetype="solid")+
  #   geom_vline(aes(xintercept=60), color="darkblue", linetype="dotted")+
  sjPlot::theme_sjplot2() +
  #facet_wrap(~motivodeegreso_mod_imp)+
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Línea vertical= Máximo de 3 valores perdidos atribuibles a combinaciones de respuesta por defecto")+
  scale_y_continuous(breaks=seq(0,nrow(encuesta_rec_miss),25))+
  scale_x_continuous(breaks=seq(0,160,10))+
  geom_vline(xintercept = 9, col = 2, lty = 2)
# xlim(c(-1,2000))
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p4)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 6: Histograma de Frecuencias, Valores perdidos en variables de interés



Show code
p4_2022<-ggplot(encuesta2_rec_miss,aes(x=suma_parcial), alpha=.7)+
  geom_histogram_interactive(bins=10)+
  #   geom_vline(aes(xintercept=30), color="darkred", linetype="dashed")+
  #   geom_vline(aes(xintercept=45), color="darkmagenta", linetype="solid")+
  #   geom_vline(aes(xintercept=60), color="darkblue", linetype="dotted")+
  sjPlot::theme_sjplot2() +
  #facet_wrap(~motivodeegreso_mod_imp)+
labs(y = "Frecuencia",x="Suma de Puntajes",caption="Línea vertical= Máximo de 3 valores perdidos atribuibles a combinaciones de respuesta por defecto")+
  scale_y_continuous(breaks=seq(0,nrow(encuesta2_rec_miss),25))+
  scale_x_continuous(breaks=seq(0,160,10))+
  geom_vline(xintercept = 9, col = 2, lty = 2)
# xlim(c(-1,2000))
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p4_2022)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)

Figure 7: Histograma de Frecuencias, Valores perdidos en variables de interés (2022)


Generamos una medida suma_parcial que tiene la cantidad de datos perdidos por usuario (aunque ecluyendo los casos con mes de 9 puntos, los que serían similares a las preguntas que por diseño no van a contestar los participantes, porque no corresponden a esas categorías de respuesta, etc.).


Descriptivo

El número de diferencias en puntajes con lo obtenido por felipe es 0.

Show code
p_corr<-ggplot(encuesta2_rec,aes(x=dias_despues, y=compromiso_sostenible_ags), alpha=.7)+
  #geom_histogram_interactive(bins=10)+
  geom_point_interactive()+
    sjPlot::theme_sjplot2() +
  
labs(y = "Suma puntajes Compromiso sostenible",x="Días despues del 25-07",caption="Línea vertical= Máximo de 3 valores perdidos atribuibles a combinaciones de respuesta por defecto")+
  geom_vline(xintercept = 9, col = 2, lty = 2)
# xlim(c(-1,2000))
tooltip_css <- "background-color:gray;color:white;font-style:italic;padding:10px;border-radius:10px 20px 10px 20px;"
ggiraph(code = {print(p_corr)}, tooltip_extra_css = tooltip_css, tooltip_opacity = .75)
Show code
message("Asociación de compromiso sostenible, días desde el 25-07, estratificado por dirección (1,000 remuestreos)")
Asociación de compromiso sostenible, días desde el 25-07, estratificado por dirección (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggscatterstats(data = data.frame(encuesta2_rec) %>%                                    dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto")),
                            x = dias_despues,
                            y = compromiso_sostenible_ags,
                            xlab="Días después del 25-07", 
                            ylab="Compromiso sostenible (suma)",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Registered S3 method overwritten by 'ggside':
  method from   
  +.gg   ggplot2
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Show code
#ggside

jpeg("_Fig1_scatter.jpg", width = 18, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggscatterstats(data = data.frame(encuesta2_rec) %>%                                    dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto")),
                            x = dias_despues,
                            y = compromiso_sostenible_ags,
                            xlab="Días después del 25-07", 
                            ylab="Compromiso sostenible (suma)",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
`stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Show code
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback, estratificado por dirección (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback, estratificado por dirección (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbarstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            xlab="Compromiso sostenible (suma)", 
                            ylab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
#ggside

jpeg("_Fig2_scatter.jpg", width = 20, height = 10, units = 'in', res = 1200)
ggstatsplot::grouped_ggbarstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            xlab="Compromiso sostenible (suma)", 
                            ylab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback (dicotomizada), estratificado por dirección (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback (dicotomizada), estratificado por dirección (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
jpeg("_Fig3_violin.jpg", width = 20, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback, estratificado por dirección (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback, estratificado por dirección (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
jpeg("_Fig4_violin.jpg", width = 20, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))),
                            x = ges_des_1,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback, estratificado por dirección, descartando a quienes indican 0 recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback, estratificado por dirección, descartando a quienes indican 0 recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>0),
                            x = ges_des_1,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
jpeg("_Fig5_violin.jpg", width = 20, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>0),
                            x = ges_des_1,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback (dicotomizado), estratificado por dirección, descartando a quienes indican 0 recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback (dicotomizado), estratificado por dirección, descartando a quienes indican 0 recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>0),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
jpeg("_Fig6_violin.jpg", width = 20, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>0),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
message("Asociación de compromiso sostenible y Feedback (dicotomizado), estratificado por dirección, descartando a quienes indican 6 o menos recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)")
Asociación de compromiso sostenible y Feedback (dicotomizado), estratificado por dirección, descartando a quienes indican 6 o menos recomendando a la empresa como un buen lugar para trabajar (1,000 remuestreos)
Show code
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>=7),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
Show code
jpeg("_Fig7_violin.jpg", width = 20, height = 5, units = 'in', res = 600)
ggstatsplot::grouped_ggbetweenstats(data = data.frame(encuesta2_rec) %>%  dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))%>% dplyr::filter(enps_lugar_trab>=7),
                            x = ges_des_1_rec,
                            y = compromiso_sostenible_ags,
                            ylab="Compromiso sostenible (suma)", 
                            xlab="Feedback",
                            grouping.var = group,
                            nboot= 1000,
                            type = "p" )
dev.off()
png 
  2 
Show code
encuesta2_rec %>%  dplyr::mutate(group=factor(dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"), levels=c("Resto", "Ventas", "Operaciones")),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo"))) %>%
  dplyr::mutate(ges_des_1_rec= ff_label(ges_des_1_rec,"Feedback superiores")) %>% 
    finalfit("compromiso_sostenible_ags", c("group", "ges_des_1_rec", "dias_despues", "sexo", "antiguedad")) %>% data.table::data.table(keep.rownames = F) %>%  knitr::kable("markdown")
Dependent: compromiso_sostenible_ags unit value Coefficient (univariable) Coefficient (multivariable)
group Resto Mean (sd) 8.1 (1.9) - -
Ventas Mean (sd) 7.5 (2.1) -0.59 (-0.93 to -0.26, p=0.001) -0.29 (-0.61 to 0.04, p=0.084)
Operaciones Mean (sd) 7.3 (2.3) -0.79 (-1.18 to -0.41, p<0.001) -0.36 (-0.69 to -0.03, p=0.031)
Feedback superiores Otros Mean (sd) 5.4 (2.8) - -
…de acuerdo/De acuerdo Mean (sd) 8.2 (1.3) 2.84 (2.54 to 3.14, p<0.001) 2.76 (2.45 to 3.07, p<0.001)
dias_despues [0.0,38.0] Mean (sd) 7.6 (2.1) -0.02 (-0.05 to 0.00, p=0.066) -0.01 (-0.03 to 0.01, p=0.394)
sexo F Mean (sd) 7.8 (2.0) - -
M Mean (sd) 7.5 (2.2) -0.24 (-0.53 to 0.06, p=0.122) 0.02 (-0.25 to 0.30, p=0.868)
antiguedad Menos de 3 meses Mean (sd) 8.0 (1.4) - -
Entre 3 meses y 1 año Mean (sd) 7.6 (2.1) -0.43 (-3.36 to 2.51, p=0.774) -0.01 (-2.48 to 2.45, p=0.992)
Entre 1 y 2 años Mean (sd) 7.7 (1.9) -0.30 (-3.24 to 2.64, p=0.841) 0.10 (-2.37 to 2.58, p=0.936)
Entre 2 y 5 años Mean (sd) 7.6 (2.4) -0.44 (-3.39 to 2.50, p=0.767) 0.01 (-2.47 to 2.48, p=0.996)
Entre 5 y 10 años Mean (sd) 7.6 (2.3) -0.36 (-3.32 to 2.59, p=0.809) -0.08 (-2.56 to 2.41, p=0.952)
Más de 10 años Mean (sd) 8.8 (0.5) 0.79 (-2.29 to 3.87, p=0.615) 0.63 (-1.95 to 3.21, p=0.632)
Show code
encuesta2_rec2<-
encuesta2_rec %>%  dplyr::mutate(group=factor(dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto"), levels=c("Resto", "Ventas", "Operaciones")),  ges_des_1_rec= factor(dplyr::case_when(ges_des_1=="Tiendo a estar de acuerdo"~1, ges_des_1=="De Acuerdo"~1, T~ 0),levels=c(0,1),labels=c("Otros","...de acuerdo/De acuerdo")))


Show code
for (i in 1:length(encuesta2_rec)){
  x<-names(encuesta2_rec)[i]
attr(encuesta2_rec[[x]],"label")<-attributes(encuesta2_rec)$variable.labels[[i]]
}

library(compareGroups)

#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
  table0_all <- suppressWarnings(compareGroups(group ~ 
      sexo+
      comp_sos_1+
      comp_sos_2+
      comp_sos_3+
      comp_sos_4+
      comp_sos_5+
      comp_sos_6+
      comp_sos_7+
      comp_sos_8+
      comp_sos_9+
      ges_des_1+
      enps_lugar_trab+
      sexo+
      edad+
      dias_despues+
      c_area+
      antiguedad+
      funcion, 
           method= c(
      comp_sos_1=3,
      comp_sos_2=3,
      comp_sos_3=3,
      comp_sos_4=3,
      comp_sos_5=3,
      comp_sos_6=3,
      comp_sos_7=3,
      comp_sos_8=3,
      comp_sos_9=3,
      ges_des_1=3,
      enps_lugar_trab=2,
      dias_despues=2,
      antiguedad=3,
      c_area=3,
      edad=2
),
    data = data.frame(encuesta2_rec) %>%                                    dplyr::mutate(group=dplyr::case_when(a_dir=="Operaciones"~"Operaciones",a_dir=="Ventas"~"Ventas",T~"Resto")),
    include.miss = T, #baja el número de casos
    p.corrected=T,
    chisq.test.perm=T,
    chisq.test.seed=1234,
    var.equal=T)
  )
#group
restab0_all <- createTable(table0_all, show.p.overall = T)

pvals0 <- getResults(table0_all)
#p.adjust(pvals, method = "BH")
export2md(restab0_all, size=10, first.strip=T, hide.no="no", position="center",
          format="html",caption= "Descriptivo Aplicación Total (2022)",
          #col.names=c("Variables", "Todos los casos", "N")
         )%>%
  kableExtra::add_footnote(c("Note. N= Número de participantes con al menos una respuesta válida en las variables seleccionadas; Variables continuas se presentan como medianas y percentiles 25 y 75;", 
                             "Variables categóricas son presentadas como el recuento y el porcentaje"), notation = "none")%>%
  kableExtra::kable_classic() %>% 
  kableExtra::scroll_box(width = "100%", height = "800px")
Table 4: Descriptivo Aplicación Total (2022)
Operaciones Resto Ventas p.overall
N=195 N=274 N=320
Sexo: <0.001
F 108 (55.4%) 161 (58.8%) 62 (19.4%)
M 87 (44.6%) 112 (40.9%) 258 (80.6%)
‘Missing’ 0 (0.00%) 1 (0.36%) 0 (0.00%)
Entiendo cómo mi trabajo contribuye a la consecución de los objetivos de esta empresa.: 0.031
En desacuerdo 1 (0.51%) 2 (0.73%) 1 (0.31%)
Tiendo a estar en desacuerdo 3 (1.54%) 5 (1.82%) 3 (0.94%)
Neutral 5 (2.56%) 4 (1.46%) 12 (3.75%)
Tiendo a estar de acuerdo 30 (15.4%) 16 (5.84%) 33 (10.3%)
De Acuerdo 156 (80.0%) 247 (90.1%) 271 (84.7%)
Recomendaría esta empresa como un buen lugar para trabajar.: <0.001
En desacuerdo 8 (4.10%) 6 (2.19%) 17 (5.31%)
Tiendo a estar en desacuerdo 7 (3.59%) 3 (1.09%) 11 (3.44%)
Neutral 24 (12.3%) 14 (5.11%) 50 (15.6%)
Tiendo a estar de acuerdo 49 (25.1%) 49 (17.9%) 61 (19.1%)
De Acuerdo 107 (54.9%) 202 (73.7%) 181 (56.6%)
Estoy dispuesto a realizar un esfuerzo mayor del que cabría esperar normalmente para contribuir al éxito de esta empresa.: <0.001
En desacuerdo 2 (1.03%) 6 (2.19%) 4 (1.25%)
Tiendo a estar en desacuerdo 1 (0.51%) 3 (1.09%) 4 (1.25%)
Neutral 21 (10.8%) 6 (2.19%) 24 (7.50%)
Tiendo a estar de acuerdo 47 (24.1%) 35 (12.8%) 50 (15.6%)
De Acuerdo 124 (63.6%) 224 (81.8%) 238 (74.4%)
Dispongo de las herramientas y los recursos necesarios para lograr la excelencia en el rendimiento.: <0.001
En desacuerdo 4 (2.05%) 2 (0.73%) 11 (3.44%)
Tiendo a estar en desacuerdo 6 (3.08%) 11 (4.01%) 13 (4.06%)
Neutral 29 (14.9%) 25 (9.12%) 40 (12.5%)
Tiendo a estar de acuerdo 80 (41.0%) 69 (25.2%) 75 (23.4%)
De Acuerdo 76 (39.0%) 167 (60.9%) 181 (56.6%)
Sé lo que se espera de mi en mi trabajo.: 0.025
En desacuerdo 3 (1.54%) 4 (1.46%) 1 (0.31%)
Tiendo a estar en desacuerdo 3 (1.54%) 5 (1.82%) 6 (1.88%)
Neutral 12 (6.15%) 5 (1.82%) 19 (5.94%)
Tiendo a estar de acuerdo 40 (20.5%) 36 (13.1%) 42 (13.1%)
De Acuerdo 137 (70.3%) 224 (81.8%) 252 (78.8%)
Mi trabajo me ofrece la oportunidad de enfrentarme a nuevos desafíos.: <0.001
En desacuerdo 9 (4.62%) 7 (2.55%) 6 (1.88%)
Tiendo a estar en desacuerdo 10 (5.13%) 5 (1.82%) 4 (1.25%)
Neutral 35 (17.9%) 10 (3.65%) 31 (9.69%)
Tiendo a estar de acuerdo 37 (19.0%) 50 (18.2%) 62 (19.4%)
De Acuerdo 104 (53.3%) 202 (73.7%) 217 (67.8%)
Las personas con las que trabajo por lo general se llevan bien entre sí.: <0.001
En desacuerdo 4 (2.05%) 6 (2.19%) 10 (3.12%)
Tiendo a estar en desacuerdo 6 (3.08%) 6 (2.19%) 13 (4.06%)
Neutral 28 (14.4%) 13 (4.74%) 42 (13.1%)
Tiendo a estar de acuerdo 57 (29.2%) 52 (19.0%) 82 (25.6%)
De Acuerdo 100 (51.3%) 197 (71.9%) 173 (54.1%)
Mi trabajo me aporta una sensación de realización personal.: 0.001
En desacuerdo 11 (5.64%) 7 (2.55%) 8 (2.50%)
Tiendo a estar en desacuerdo 10 (5.13%) 7 (2.55%) 10 (3.12%)
Neutral 35 (17.9%) 24 (8.76%) 47 (14.7%)
Tiendo a estar de acuerdo 55 (28.2%) 58 (21.2%) 75 (23.4%)
De Acuerdo 84 (43.1%) 178 (65.0%) 180 (56.2%)
Puedo mantener el nivel de energía que necesito durante toda la jornada laboral.: 0.776
En desacuerdo 9 (4.62%) 11 (4.01%) 15 (4.69%)
Tiendo a estar en desacuerdo 18 (9.23%) 17 (6.20%) 29 (9.06%)
Neutral 32 (16.4%) 41 (15.0%) 57 (17.8%)
Tiendo a estar de acuerdo 56 (28.7%) 91 (33.2%) 103 (32.2%)
De Acuerdo 80 (41.0%) 114 (41.6%) 116 (36.2%)
Recibo feedback de manera constante, qué me ayuda a mejorar y a crecer en la organización.: <0.001
En desacuerdo 12 (6.15%) 6 (2.19%) 15 (4.69%)
Tiendo a estar en desacuerdo 16 (8.21%) 10 (3.65%) 13 (4.06%)
Neutral 29 (14.9%) 21 (7.66%) 47 (14.7%)
Tiendo a estar de acuerdo 54 (27.7%) 60 (21.9%) 91 (28.4%)
De Acuerdo 84 (43.1%) 177 (64.6%) 154 (48.1%)
¿Recomendaría esta empresa como lugar de trabajo a sus colegas, familiares, amigos o vecinos? 9.00 [7.00;10.0] 10.0 [9.00;10.0] 9.00 [6.75;10.0] <0.001
Sexo: <0.001
F 108 (55.4%) 161 (58.8%) 62 (19.4%)
M 87 (44.6%) 112 (40.9%) 258 (80.6%)
‘Missing’ 0 (0.00%) 1 (0.36%) 0 (0.00%)
Edad 34.0 [28.0;40.0] 34.0 [29.0;40.0] 36.0 [31.0;41.0] 0.015
Días en que contesta desde después del 07-25 19.0 [17.0;22.0] 22.0 [15.0;25.0] 25.0 [22.0;29.0] <0.001
Indica tu antigüedad trabajando dentro de Verisure: 0.001
Menos de 3 meses 0 (0.00%) 0 (0.00%) 2 (0.62%)
Entre 3 meses y 1 año 85 (43.6%) 85 (31.0%) 147 (45.9%)
Entre 1 y 2 años 37 (19.0%) 68 (24.8%) 58 (18.1%)
Entre 2 y 5 años 37 (19.0%) 72 (26.3%) 80 (25.0%)
Entre 5 y 10 años 30 (15.4%) 45 (16.4%) 24 (7.50%)
Más de 10 años 6 (3.08%) 4 (1.46%) 9 (2.81%)
Indica a que categoría de funciones perteneces: <0.001
Plataforma telefónica 115 (59.0%) 108 (39.4%) 14 (4.38%)
Soy líder (Tengo personas reportándome formalmente) 30 (15.4%) 58 (21.2%) 78 (24.4%)
Staff (administrativo o profesional) 11 (5.64%) 103 (37.6%) 25 (7.81%)
Terreno 39 (20.0%) 5 (1.82%) 203 (63.4%)
Note. N= Número de participantes con al menos una respuesta válida en las variables seleccionadas; Variables continuas se presentan como medianas y percentiles 25 y 75;
Variables categóricas son presentadas como el recuento y el porcentaje
Show code
#rm(list=ls());gc()
for (i in 1:length(encuesta_rec)){
  x<-names(encuesta_rec)[i]
attr(encuesta_rec[[x]],"label")<-attributes(encuesta_rec)$variable.labels[[i]]
}

library(compareGroups)

#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_#_
  table1_all <- suppressWarnings(compareGroups( ~ 
      sexo+
      b_ger+
      comp_sos_1+
      comp_sos_2+
      comp_sos_3+
      comp_sos_4+
      comp_sos_5+
      comp_sos_6+
      comp_sos_7+
      comp_sos_8+
      comp_sos_9+
      dllo_prof_1+
      dllo_prof_2+
      dllo_prof_3+
      lid_1+
      lid_2+
      ent_trab_1+
      ent_trab_2+
      covid_1+
      covid_2+
      covid_3+
      covid_4+
      intencion_1+
      com_1+
      com_2+
      ges_des_1+
      ges_des_2+
      comp_ben_1+
      comp_ben_2+
      superv_1+
      superv_2+
      superv_3+
      enps_lugar_trab+
      enps_prod_serv+
        suma_parcial, 
           method= c(
      sexo=3,
      b_ger=3,
      comp_sos_1=3,
      comp_sos_2=3,
      comp_sos_3=3,
      comp_sos_4=3,
      comp_sos_5=3,
      comp_sos_6=3,
      comp_sos_7=3,
      comp_sos_8=3,
      comp_sos_9=3,
      dllo_prof_1=3,
      dllo_prof_2=3,
      dllo_prof_3=3,
      lid_1=3,
      lid_2=3,
      ent_trab_1=3,
      ent_trab_2=3,
      covid_1=3,
      covid_2=3,
      covid_3=3,
      covid_4=3,
      intencion_1=3,
      com_1=3,
      com_2=3,
      ges_des_1=3,
      ges_des_2=3,
      comp_ben_1=3,
      comp_ben_2=3,
      superv_1=3,
      superv_2=3,
      superv_3=3,
      enps_lugar_trab=2,
      enps_prod_serv=2,
      suma_parcial=2
),
    data = encuesta_rec,
    include.miss = T, #baja el número de casos
    p.corrected=T,
    chisq.test.perm=T,
    chisq.test.seed=1234,
    var.equal=T)
  )

restab1_all <- createTable(table1_all, show.p.overall = T)

pvals1 <- getResults(table1_all)
#p.adjust(pvals, method = "BH")
export2md(restab1_all, size=10, first.strip=T, hide.no="no", position="center",
          format="html",caption= "Descriptivo Aplicación Total",
          col.names=c("Variables", "Todos los casos", "N")
         )%>%
  kableExtra::add_footnote(c("Note. N= Número de participantes con al menos una respuesta válida en las variables seleccionadas; Variables continuas se presentan como medianas y percentiles 25 y 75;", 
                             "Variables categóricas son presentadas como el recuento y el porcentaje"), notation = "none")%>%
  kableExtra::kable_classic() %>% 
  kableExtra::scroll_box(width = "100%", height = "800px")
Table 5: Descriptivo Aplicación Total
Variables Todos los casos N
N=598
sexo: 598
F 218 (36.5%)
M 378 (63.2%)
‘Missing’ 2 (0.33%)
Gerencia: ‘Missing’ 598 (100%) 598
Entiendo cómo mi trabajo contribuye a la consecución de los objetivos de esta empresa: 598
Muy en desacuerdo 5 (0.84%)
En desacuerdo 2 (0.33%)
Ni de acuerdo ni en desacuerdo 19 (3.18%)
De acuerdo 114 (19.1%)
Muy de acuerdo 458 (76.6%)
Recomendaría esta empresa como un buen lugar para trabajar: 598
Muy en desacuerdo 7 (1.17%)
En desacuerdo 10 (1.67%)
Ni de acuerdo ni en desacuerdo 47 (7.86%)
De acuerdo 149 (24.9%)
Muy de acuerdo 385 (64.4%)
Estoy dispuesto a realizar un esfuerzo mayor del que cabría esperar normalmente para contribuir al éxito de esta empresa: 598
Muy en desacuerdo 5 (0.84%)
En desacuerdo 7 (1.17%)
Ni de acuerdo ni en desacuerdo 21 (3.51%)
De acuerdo 146 (24.4%)
Muy de acuerdo 419 (70.1%)
Dispongo de las herramientas y los recursos necesarios para lograr la excelencia en el rendimiento: 598
Muy en desacuerdo 7 (1.17%)
En desacuerdo 29 (4.85%)
Ni de acuerdo ni en desacuerdo 64 (10.7%)
De acuerdo 202 (33.8%)
Muy de acuerdo 296 (49.5%)
Sé lo que se espera de mí en mi trabajo: 598
Muy en desacuerdo 2 (0.33%)
En desacuerdo 6 (1.00%)
Ni de acuerdo ni en desacuerdo 17 (2.84%)
De acuerdo 152 (25.4%)
Muy de acuerdo 421 (70.4%)
Mi trabajo me ofrece la oportunidad de enfrentarme a nuevos desafíos: 598
Muy en desacuerdo 7 (1.17%)
En desacuerdo 14 (2.34%)
Ni de acuerdo ni en desacuerdo 50 (8.36%)
De acuerdo 155 (25.9%)
Muy de acuerdo 372 (62.2%)
Las personas con las que trabajo por lo general se llevan bien entre sí: 598
Muy en desacuerdo 6 (1.00%)
En desacuerdo 18 (3.01%)
Ni de acuerdo ni en desacuerdo 58 (9.70%)
De acuerdo 178 (29.8%)
Muy de acuerdo 338 (56.5%)
Mi trabajo me aporta una sensación de realización personal: 598
Muy en desacuerdo 10 (1.67%)
En desacuerdo 19 (3.18%)
Ni de acuerdo ni en desacuerdo 55 (9.20%)
De acuerdo 168 (28.1%)
Muy de acuerdo 346 (57.9%)
Puedo mantener el nivel de energía que necesito durante toda la jornada laboral: 598
Muy en desacuerdo 21 (3.51%)
En desacuerdo 47 (7.86%)
Ni de acuerdo ni en desacuerdo 84 (14.0%)
De acuerdo 207 (34.6%)
Muy de acuerdo 239 (40.0%)
Creo que permanecer en esta empresa es lo mejor para mí desde el punto de vista profesional y personal: 598
Muy en desacuerdo 12 (2.01%)
En desacuerdo 14 (2.34%)
Ni de acuerdo ni en desacuerdo 55 (9.20%)
De acuerdo 181 (30.3%)
Muy de acuerdo 336 (56.2%)
La formación que he recibido me ha preparado adecuadamente para el trabajo que hago: 598
Muy en desacuerdo 8 (1.34%)
En desacuerdo 17 (2.84%)
Ni de acuerdo ni en desacuerdo 47 (7.86%)
De acuerdo 203 (33.9%)
Muy de acuerdo 323 (54.0%)
Dispongo de suficientes oportunidades de recibir formación para mejorar mis habilidades en mi trabajo actual: 598
Muy en desacuerdo 13 (2.17%)
En desacuerdo 26 (4.35%)
Ni de acuerdo ni en desacuerdo 71 (11.9%)
De acuerdo 195 (32.6%)
Muy de acuerdo 293 (49.0%)
Soy optimista respecto al futuro de esta empresa: 598
Muy en desacuerdo 3 (0.50%)
En desacuerdo 7 (1.17%)
Ni de acuerdo ni en desacuerdo 22 (3.68%)
De acuerdo 117 (19.6%)
Muy de acuerdo 449 (75.1%)
Tengo confianza en las decisiones que toma el equipo directivo de esta empresa: 598
Muy en desacuerdo 10 (1.67%)
En desacuerdo 24 (4.01%)
Ni de acuerdo ni en desacuerdo 55 (9.20%)
De acuerdo 157 (26.3%)
Muy de acuerdo 352 (58.9%)
Mi responsable directo se preocupa realmente por mí como empleado: 598
Muy en desacuerdo 15 (2.51%)
En desacuerdo 19 (3.18%)
Ni de acuerdo ni en desacuerdo 46 (7.69%)
De acuerdo 136 (22.7%)
Muy de acuerdo 382 (63.9%)
Me siento cómodo con los valores de esta empresa: 598
Muy en desacuerdo 7 (1.17%)
En desacuerdo 8 (1.34%)
Ni de acuerdo ni en desacuerdo 47 (7.86%)
De acuerdo 149 (24.9%)
Muy de acuerdo 387 (64.7%)
Confío en que nuestros líderes respondan eficazmente a los desafíos de negocio derivados del coronavirus.: 598
Muy en desacuerdo 14 (2.34%)
En desacuerdo 19 (3.18%)
Ni de acuerdo ni en desacuerdo 59 (9.87%)
De acuerdo 161 (26.9%)
Muy de acuerdo 345 (57.7%)
Siento que la compañía me está protegiendo durante este tiempo.: 598
Muy en desacuerdo 17 (2.84%)
En desacuerdo 30 (5.02%)
Ni de acuerdo ni en desacuerdo 67 (11.2%)
De acuerdo 148 (24.7%)
Muy de acuerdo 336 (56.2%)
Confío en nuestros líderes para proteger la salud y el bienestar de los empleados en este momento.: 598
Muy en desacuerdo 18 (3.01%)
En desacuerdo 30 (5.02%)
Ni de acuerdo ni en desacuerdo 65 (10.9%)
De acuerdo 158 (26.4%)
Muy de acuerdo 327 (54.7%)
Esta organización está haciendo un excelente trabajo manteniendo a los empleados informados sobre los asuntos importantes que nos afectan durante este tiempo.: 598
Muy en desacuerdo 8 (1.34%)
En desacuerdo 21 (3.51%)
Ni de acuerdo ni en desacuerdo 59 (9.87%)
De acuerdo 160 (26.8%)
Muy de acuerdo 350 (58.5%)
Considero que seguiré trabajando en la empresa en los próximos dos años: 598
Muy en desacuerdo 7 (1.17%)
En desacuerdo 16 (2.68%)
Ni de acuerdo ni en desacuerdo 42 (7.02%)
De acuerdo 119 (19.9%)
Muy de acuerdo 414 (69.2%)
En esta empresa se hacen esfuerzos suficientes por conocer las opiniones e ideas de los empleados: 598
Muy en desacuerdo 22 (3.68%)
En desacuerdo 29 (4.85%)
Ni de acuerdo ni en desacuerdo 80 (13.4%)
De acuerdo 193 (32.3%)
Muy de acuerdo 274 (45.8%)
Tengo acceso a la información necesaria para hacer bien mi trabajo: 598
Muy en desacuerdo 8 (1.34%)
En desacuerdo 16 (2.68%)
Ni de acuerdo ni en desacuerdo 42 (7.02%)
De acuerdo 184 (30.8%)
Muy de acuerdo 348 (58.2%)
Recibo feedback sobre mi rendimiento con regularidad.: 598
Muy en desacuerdo 15 (2.51%)
En desacuerdo 32 (5.35%)
Ni de acuerdo ni en desacuerdo 62 (10.4%)
De acuerdo 167 (27.9%)
Muy de acuerdo 322 (53.8%)
Según mi experiencia, en esta empresa se reconoce la excelencia en el rendimiento.: 598
Muy en desacuerdo 16 (2.68%)
En desacuerdo 18 (3.01%)
Ni de acuerdo ni en desacuerdo 58 (9.70%)
De acuerdo 188 (31.4%)
Muy de acuerdo 318 (53.2%)
El programa de beneficios sociales de esta organización satisface mis necesidades: 598
Muy en desacuerdo 14 (2.34%)
En desacuerdo 25 (4.18%)
Ni de acuerdo ni en desacuerdo 111 (18.6%)
De acuerdo 202 (33.8%)
Muy de acuerdo 246 (41.1%)
Creo que mi remuneración es competitiva si la comparamos con la de personas que desempeñan un trabajo similar en otras empresas: 598
Muy en desacuerdo 24 (4.01%)
En desacuerdo 55 (9.20%)
Ni de acuerdo ni en desacuerdo 91 (15.2%)
De acuerdo 186 (31.1%)
Muy de acuerdo 242 (40.5%)
Mi responsable directo hace una buena labor fomentando el trabajo en equipo: 598
Muy en desacuerdo 13 (2.17%)
En desacuerdo 19 (3.18%)
Ni de acuerdo ni en desacuerdo 45 (7.53%)
De acuerdo 167 (27.9%)
Muy de acuerdo 354 (59.2%)
Mi responsable directo me reconoce el trabajo bien hecho: 598
Muy en desacuerdo 12 (2.01%)
En desacuerdo 13 (2.17%)
Ni de acuerdo ni en desacuerdo 34 (5.69%)
De acuerdo 159 (26.6%)
Muy de acuerdo 380 (63.5%)
Mi responsable directo fomenta el desarrollo de los empleados: 598
Muy en desacuerdo 13 (2.17%)
En desacuerdo 12 (2.01%)
Ni de acuerdo ni en desacuerdo 48 (8.03%)
De acuerdo 155 (25.9%)
Muy de acuerdo 370 (61.9%)
¿Recomendaría esta empresa como lugar de trabajo a sus colegas, familiares, amigos o vecinos? 10.0 [8.00;10.0] 598
¿Recomendaría los productos y servicios de esta empresa a sus colegas, familiares, amigos o vecinos? 10.0 [9.00;10.0] 598
Suma de Valores Perdidos en Variables de Interés 0.00 [0.00;0.00] 598
Note. N= Número de participantes con al menos una respuesta válida en las variables seleccionadas; Variables continuas se presentan como medianas y percentiles 25 y 75;
Variables categóricas son presentadas como el recuento y el porcentaje
Show code
#janitor::tabyl(p20_contr_cont_med_pev_1_simpler)
#   p27_cond_trab_sup_jef
table2_sex <- suppressWarnings(compareGroups(sexo ~ 
      b_ger+
      comp_sos_1+
      comp_sos_2+
      comp_sos_3+
      comp_sos_4+
      comp_sos_5+
      comp_sos_6+
      comp_sos_7+
      comp_sos_8+
      comp_sos_9+
      dllo_prof_1+
      dllo_prof_2+
      dllo_prof_3+
      lid_1+
      lid_2+
      ent_trab_1+
      ent_trab_2+
      covid_1+
      covid_2+
      covid_3+
      covid_4+
      intencion_1+
      com_1+
      com_2+
      ges_des_1+
      ges_des_2+
      comp_ben_1+
      comp_ben_2+
      superv_1+
      superv_2+
      superv_3+
      enps_lugar_trab+
      enps_prod_serv+
        suma_parcial, 
           method= c(
      sexo=3,
      b_ger=3,
      comp_sos_1=3,
      comp_sos_2=3,
      comp_sos_3=3,
      comp_sos_4=3,
      comp_sos_5=3,
      comp_sos_6=3,
      comp_sos_7=3,
      comp_sos_8=3,
      comp_sos_9=3,
      dllo_prof_1=3,
      dllo_prof_2=3,
      dllo_prof_3=3,
      lid_1=3,
      lid_2=3,
      ent_trab_1=3,
      ent_trab_2=3,
      covid_1=3,
      covid_2=3,
      covid_3=3,
      covid_4=3,
      intencion_1=3,
      com_1=3,
      com_2=3,
      ges_des_1=3,
      ges_des_2=3,
      comp_ben_1=3,
      comp_ben_2=3,
      superv_1=3,
      superv_2=3,
      superv_3=3,
      enps_lugar_trab=2,
      enps_prod_serv=2,
      suma_parcial=2
),
    data = encuesta_rec,
    include.miss = T, #baja el número de casos
    p.corrected=T,
    chisq.test.perm=T,
    chisq.test.seed=1234,
    var.equal=T)
  )

restab2_sex <- createTable(table2_sex, show.p.overall = T)

pvals2 <- getResults(table2_sex)
#p.adjust(pvals, method = "BH")
export2md(restab2_sex, size=10, first.strip=T, hide.no="no", position="center",
          format="html",caption= "Descriptivo Aplicación Total según Sexo",
          col.names=c("Variables", "Hombres", "Mujeres", "Valor-p")
         )%>%
  kableExtra::add_footnote(c("Note. N= Número de participantes con al menos una respuesta válida en las variables seleccionadas; Variables continuas se presentan como medianas y percentiles 25 y 75;", 
                             "Variables categóricas son presentadas como el recuento y el porcentaje"), notation = "none")%>%
  kableExtra::kable_classic() %>% 
  kableExtra::scroll_box(width = "100%", height = "800px")


Datos Generales


Show code
library(plotly)

sexo_df<-
encuesta_rec %>%
     dplyr::group_by(sexo)%>%
       dplyr::summarise(n=n(),percent=round(n/sum(n),2))%>% 
     dplyr::ungroup()%>%
    dplyr::mutate(valid_percent=scales::percent(n/(sum(n)-sum(n[is.na(sexo)])),2),
                  valid_percent=ifelse(is.na(sexo),NA,valid_percent),
                  percent=scales::percent(n/(sum(n)),2))%>%   
#      dplyr::mutate(label=paste0("",p7_exp_c19_trab_cont,"<br>",n,"(",percent,")<br>Válido= ",valid_percent)) %>% 
  dplyr::mutate(label=paste0(sexo,"\n(",valid_percent,")")) #%>%   
      #dplyr::filter(!is.na(sexo))
sex_plotly<-
sexo_df %>% 
plot_ly(labels = ~sexo, values = ~n, type = 'pie',hole = 0.6, textposition = 'outside',textinfo = 'text', sort = FALSE,
        automargin = TRUE,
        text = ~label,
        direction = "clockwise",
        textfont = list(color = "black", size = 14),
        marker = list(colors = c(gray.colors(length(unique(encuesta_rec$sexo))-1), "#FF5252"))) %>%
  layout(yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = T)) %>% 
  layout(xaxis = list(ticktext = c("Ninguno", "1 a 10", "11 a 30", "31 a 100", "No Responde")))%>% 
  layout(showlegend = FALSE) %>% 
  layout(margin = m)

htmltools::tagList(list(sex_plotly))
Show code
no_mostrar=0
if(no_mostrar==1){
p_10 %>% htmlwidgets::onRender(
        "function(el, x) {
  var gd = document.getElementById(el.id); 
  Plotly.downloadImage(gd, {format: 'svg', scale: 4, width: 600, height: 800,filename: 'p10'});
  }"
    )
}
Show code
b_ger_df<-
encuesta_rec %>%
     dplyr::group_by(b_ger)%>%
       dplyr::summarise(n=n(),percent=round(n/sum(n),2))%>% 
     dplyr::ungroup()%>%
    dplyr::mutate(valid_percent=scales::percent(n/(sum(n)-sum(n[is.na(b_ger)])),2),
                  valid_percent=ifelse(is.na(b_ger),NA,valid_percent),
                  percent=scales::percent(n/(sum(n)),2))%>%   
#      dplyr::mutate(label=paste0("",p7_exp_c19_trab_cont,"<br>",n,"(",percent,")<br>Válido= ",valid_percent)) %>% 
  dplyr::mutate(label=paste0(b_ger,"\n(",valid_percent,")")) #%>%   

b_ger_plotly<-
b_ger_df %>% 
plot_ly(labels = ~b_ger, values = ~n, type = 'pie',hole = 0.3, textposition = 'outside',textinfo = 'text', sort = FALSE,
        automargin = TRUE,
        text = ~label,
        direction = "clockwise",
        textfont = list(color = "black", size = 14),
        marker = list(colors = c(gray.colors(length(unique(encuesta_rec$b_ger))-1), "#FF5252"))) %>%
  layout(yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = T)) %>% 
  layout(xaxis = list(ticktext = c("Ninguno", "1 a 10", "11 a 30", "31 a 100", "No Responde")))%>% 
  layout(showlegend = FALSE)%>% 
  layout(margin = m)

htmltools::tagList(list(b_ger_plotly))
Show code
no_mostrar=0
if(no_mostrar==1){
p_10 %>% htmlwidgets::onRender(
        "function(el, x) {
  var gd = document.getElementById(el.id); 
  Plotly.downloadImage(gd, {format: 'svg', scale: 4, width: 600, height: 800,filename: 'p10'});
  }"
    )
}


Componentes


Se revirtieron los valores de los ítems correspondientes a insatisfacción (3 y 5), pero sólo para la suma de los puntajes.


Show code
invisible(c("Compromiso Sostenible", "Desarrollo Profesional", "Liderazgo",  "Entorno de Trabajo", "Covid", "Intención de permanecer en la Compañía"­a""Comunicación"ón"Gestión del Desempeño"peÃ"Compensación y Beneficios"fic"Supervisor Inmediato"))iato"))
#`
comp_sos_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(starts_with("comp_sos_")),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(starts_with("comp_sos_")) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Muy en desacuerdo(0)",
                                          val==1~"En desacuerdo(1)",
                                          val==2~"Ni acuerdo ni desacuerdo(2)",
                                          val==3~"De acuerdo(3)",
                                          val==4~"Muy de acuerdo(4)",
                                          is.na(val)~"No Responde"
                                            )) %>% 
  dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key)))) %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(comp_sos_bars)){
  comp_sos_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(comp_sos_bars$label[i], width =40), "<br>"), collapse='')
}  
comp_sos_bars$label_text<-paste0("Código: ""comp_sos_bars$keyy"<br>Valor:""comp_sos_bars$val_textt"<br>Porcentaje:""comp_sos_bars$percc"<br>Válido:":comp_sos_bars$valid_percr"<br>Etiqueta:":comp_sos_bars$label)l)

comp_sos_bars_plot<-  
    ggplot(comp_sos_bars,aes(x=items_num,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems"",="Número de Respuestas\n")+)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$comp_sos_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))

ggplotly(comp_sos_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 8: Gráfico de Barras, Preguntas Sobre Compromiso Sostenible

Show code
invisible(c("Compromiso Sostenible", "Desarrollo Profesional", "Liderazgo",  "Entorno de Trabajo", "Covid", "Intención de permanecer en la Compañía"­a""Comunicación"ón"Gestión del Desempeño"peÃ"Compensación y Beneficios"fic"Supervisor Inmediato"))iato"))
library(ggrepel)
Warning: package 'ggrepel' was built under R version 4.1.3
Show code
comp_sos_bars %>% 
ggplot(aes(x=items_num,y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 10, face = "bold"),
        axis.text.x= element_text(size = 12),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold")+ #+
  scale_x_discrete(limits =paste0(1:9))#+
Gráfico de Barras, Preguntas Sobre Compromiso Sostenible

Figure 9: Gráfico de Barras, Preguntas Sobre Compromiso Sostenible

Show code
  #scale_x_discrete(labels =c("Trabajo contribuye\nen la empresa","Formación y\npreparación","Oportunidades\nde formación"))


Se verá el Desarrollo Profesional

Show code
invisible(c("Compromiso Sostenible", "Desarrollo Profesional", "Liderazgo",  "Entorno de Trabajo", "Covid", "Intención de permanecer en la Compañía"­a""Comunicación"ón"Gestión del Desempeño"peÃ"Compensación y Beneficios"fic"Supervisor Inmediato"))iato"))
dllo_prof_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(paste0("dllo_prof_",1:3)),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(paste0("dllo_prof_",1:3)) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Nunca(0)",
                                          val==1~"A veces(1)",
                                          val==2~"A menudo(2)",
                                          val==3~"Siempre(3)",
                                          is.na(val)~"No Responde")) %>% 
  dplyr::mutate(items_num=readr::parse_number(key, "\\d+")) %>% 
  #dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key))))
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(dllo_prof_bars)){
  dllo_prof_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(dllo_prof_bars$label[i], width =40), "<br>"), collapse='')
}  
dllo_prof_bars$label_text<-paste0("Código: ""dllo_prof_bars$keyy"<br>Valor:""dllo_prof_bars$val_textt"<br>Porcentaje:""dllo_prof_bars$percc"<br>Válido:":dllo_prof_bars$valid_percr"<br>Etiqueta:":dllo_prof_bars$label)l)

dllo_prof_bars_plot<-  
    ggplot(dllo_prof_bars,aes(x=items_num,y=sum,fill=val, label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems"",="Número de Respuestas\n")+)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  scale_x_continuous(breaks=c(1:12))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$dllo_prof_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))


dllo_prof_bars_plot<-  
    ggplot(dllo_prof_bars,aes(x=items_num,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems"",="Número de Respuestas\n")+)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$dllo_prof_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))

ggplotly(dllo_prof_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 10: Gráfico de Barras, Desarrollo Profesional (1)

Show code
##, na.value = "gray80", palette="Reds"
Show code
invisible("ALERTA: Que se modifique")

library(ggrepel)
dllo_prof_bars %>% 
ggplot(aes(x=as.character(key),y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 13, face = "bold"),
        axis.text.x= element_text(size = 13),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold") +
  #scale_x_discrete(limits =paste0("Desarrollo\nProfesional\n",1:3))
  scale_x_discrete(labels =c("Permanecer\nen la empresa","Formación y\npreparación","Oportunidades\nde formación"))
Gráfico de Barras, Preguntas Sobre Desarrollo Profesional (2)

Figure 11: Gráfico de Barras, Preguntas Sobre Desarrollo Profesional (2)


Show code
lid_ent_trab_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(starts_with("lid"),starts_with("ent_trab")),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(starts_with("lid"),starts_with("ent_trab")) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Nunca(0)",
                                          val==1~"Sólo unas pocas veces(1)",
                                          val==2~"Algunas veces(2)",
                                          val==3~"La mayoría de las veces(3)",
                                          val==4~"Siempre(4)",
                                          is.na(val)~"No Responde"
                                            )) %>% 
  dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key)))) %>% 
  #dplyr::mutate(items_num=readr::parse_number(key, "\\d+")) %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(lid_ent_trab_bars)){
  lid_ent_trab_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(lid_ent_trab_bars$label[i], width =40), "<br>"), collapse='')
}  
lid_ent_trab_bars$label_text<-paste0("Código: ",lid_ent_trab_bars$key,"<br>Valor:",lid_ent_trab_bars$val_text,"<br>Porcentaje:",lid_ent_trab_bars$perc,"<br>Válido:",lid_ent_trab_bars$valid_perc,"<br>Etiqueta:",lid_ent_trab_bars$label)

lid_ent_trab_bars_plot<-  
  #   ggplot(lid_ent_trab_bars,aes(x=items_num,y=sum,fill=val, label= label_text))+
  #   geom_col() +
  # sjPlot::theme_sjplot2()+
  # labs(x="Ítems",y="Número de Respuestas\n")+
  # theme(strip.background  = element_blank(),
  #       strip.text = element_text(face="bold", size=7))+
  # scale_x_continuous(breaks=c(1:6))+
  # theme(strip.text.x = element_text(size = 8, face = "bold"),
  #       axis.text.y = element_blank(),
  #       plot.caption=element_text(hjust = 0))
   ggplot(lid_ent_trab_bars,aes(x=key,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  #scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$lid_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))+
  scale_x_discrete(labels =c("Preocupación\ncomo empleado","Comodidad con\nvalores","Optimismo\nfuturo empresa","Confianza decisiones\n directivo"))

ggplotly(lid_ent_trab_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 12: Gráfico de Barras, Preguntas Sobre Liderazgo y Entorno de Trabajo

Show code
library(ggrepel)
lid_ent_trab_bars %>% 
ggplot(aes(x=key,y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 13, face = "bold"),
        axis.text.x= element_text(size = 13),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold") +
  scale_x_discrete(labels =c("Preocupación\ncomo empleado","Comodidad con\nvalores","Optimismo\nfuturo empresa","Confianza decisiones\n directivo"))
Gráfico de Barras, Preguntas Sobre Liderazgo y Entorno de Trabajo (2)

Figure 13: Gráfico de Barras, Preguntas Sobre Liderazgo y Entorno de Trabajo (2)

Show code
covid_19_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(paste0("covid_",1:4)),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(paste0("covid_",1:4)) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Nunca(0)",
                                          val==1~"Sólo unas pocas veces(1)",
                                          val==2~"Algunas veces(2)",
                                          val==3~"La mayoría de las veces(3)",
                                          val==4~"Siempre(4)",
                                          is.na(val)~"No Responde"
                                            )) %>% 
  dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key)))) %>% 
  #dplyr::mutate(items_num=readr::parse_number(key, "\\d+")) %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(covid_19_bars)){
  covid_19_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(covid_19_bars$label[i], width =40), "<br>"), collapse='')
}  
covid_19_bars$label_text<-paste0("Código: ",covid_19_bars$key,"<br>Valor:",covid_19_bars$val_text,"<br>Porcentaje:",covid_19_bars$perc,"<br>Válido:",covid_19_bars$valid_perc,"<br>Etiqueta:",covid_19_bars$label)

covid_19_bars_plot<-  
  #   ggplot(lid_ent_trab_bars,aes(x=items_num,y=sum,fill=val, label= label_text))+
  #   geom_col() +
  # sjPlot::theme_sjplot2()+
  # labs(x="Ítems",y="Número de Respuestas\n")+
  # theme(strip.background  = element_blank(),
  #       strip.text = element_text(face="bold", size=7))+
  # scale_x_continuous(breaks=c(1:6))+
  # theme(strip.text.x = element_text(size = 8, face = "bold"),
  #       axis.text.y = element_blank(),
  #       plot.caption=element_text(hjust = 0))
   ggplot(covid_19_bars,aes(x=key,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  #scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$covid_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))+
  scale_x_discrete(labels =c("Confianza\nrespuesta líderes","Compañía\nprotege","Confianza\nprotección líderes","Información\n trabajadores"))

ggplotly(covid_19_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 14: Gráfico de Barras, Preguntas Sobre COVID-19

Show code
library(ggrepel)
covid_19_bars %>% 
ggplot(aes(x=key,y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 13, face = "bold"),
        axis.text.x= element_text(size = 13),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold") +
  scale_x_discrete(labels =c("Confianza\nrespuesta líderes","Compañía\nprotege","Confianza\nprotección líderes","Información\n trabajadores"))
Gráfico de Barras, Preguntas Sobre COVID-19 (2)

Figure 15: Gráfico de Barras, Preguntas Sobre COVID-19 (2)

Show code
#"com_1"           "com_2"           "ges_des_1"       "ges_des_2"      
#[37] "comp_ben_1"      "comp_ben_2"     
resto_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(c("com_1", "com_2", "ges_des_1", "ges_des_2", "comp_ben_1", "comp_ben_2")),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(c("com_1", "com_2", "ges_des_1", "ges_des_2", "comp_ben_1", "comp_ben_2")) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Nunca(0)",
                                          val==1~"Sólo unas pocas veces(1)",
                                          val==2~"Algunas veces(2)",
                                          val==3~"La mayoría de las veces(3)",
                                          val==4~"Siempre(4)",
                                          is.na(val)~"No Responde"
                                            )) %>% 
  dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key)))) %>% 
  #dplyr::mutate(items_num=readr::parse_number(key, "\\d+")) %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(resto_bars)){
  resto_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(resto_bars$label[i], width =40), "<br>"), collapse='')
}  
resto_bars$label_text<-paste0("Código: ",resto_bars$key,"<br>Valor:",resto_bars$val_text,"<br>Porcentaje:",resto_bars$perc,"<br>Válido:",resto_bars$valid_perc,"<br>Etiqueta:",resto_bars$label)

resto_bars_plot<-  
  #   ggplot(lid_ent_trab_bars,aes(x=items_num,y=sum,fill=val, label= label_text))+
  #   geom_col() +
  # sjPlot::theme_sjplot2()+
  # labs(x="Ítems",y="Número de Respuestas\n")+
  # theme(strip.background  = element_blank(),
  #       strip.text = element_text(face="bold", size=7))+
  # scale_x_continuous(breaks=c(1:6))+
  # theme(strip.text.x = element_text(size = 8, face = "bold"),
  #       axis.text.y = element_blank(),
  #       plot.caption=element_text(hjust = 0))
   ggplot(resto_bars,aes(x=key,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  #scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$comp_ben_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))+
  scale_x_discrete(labels =c("Esfuerzo\nconocer\nempleados","Información\npara hacer\ntrabajo","Programa\nBeneficios\n responde\nnecesidades", "Remuneraciones\ncompetitivas","Recibe\nfeedback\nregular","Reconoce\ndesempeño\nexcelente"))

ggplotly(resto_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 16: Gráfico de Barras, Preguntas Sobre Otras variables

Show code
library(ggrepel)
resto_bars %>% 
ggplot(aes(x=key,y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 13, face = "bold"),
        axis.text.x= element_text(size = 13),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold")+
  scale_x_discrete(labels =c("Esfuerzo conocer\nempleados","Información para\n hacer\ntrabajo","Programa\nBeneficios\n responde\nnecesidades", "Remuneraciones\ncompetitivas","Recibe\nfeedback\nregular","Reconoce\ndesempeño\nexcelente"))
Gráfico de Barras, Preguntas Sobre Otras variables (2)

Figure 17: Gráfico de Barras, Preguntas Sobre Otras variables (2)

Show code
superv_bars<-
encuesta_rec %>% 
  dplyr::mutate_at(.vars=vars(paste0("superv_",1:3)),.funs = ~as.numeric(.)-1) %>% 
  dplyr::select(paste0("superv_",1:3)) %>% 
  tidyr::gather(key = "key", value = "val") %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::mutate(sum=n()) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::left_join(var_lbls_no_char,by=c("key"="nam")) %>% 
  dplyr::rename("label"="var_lab") %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(label= max(label,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(key,val) %>% 
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>% 
  dplyr::mutate(val_text=dplyr::case_when(val==0~"Nunca(0)",
                                          val==1~"Sólo unas pocas veces(1)",
                                          val==2~"Algunas veces(2)",
                                          val==3~"La mayoría de las veces(3)",
                                          val==4~"Siempre(4)",
                                          is.na(val)~"No Responde"
                                            )) %>% 
  dplyr::mutate(items_num=as.numeric(substr(key, nchar(key), nchar(key)))) %>% 
  #dplyr::mutate(items_num=readr::parse_number(key, "\\d+")) %>% 
  dplyr::group_by(key) %>% 
  dplyr::mutate(perc=scales::percent(sum/sum(sum)), 
                valid_perc=scales::percent(sum/sum(sum[!is.na(val)])),
                valid_perc=ifelse(is.na(val),NA,valid_perc)) %>% 
  dplyr::ungroup()%>% 
  dplyr::filter(!is.na(val))%>% 
  dplyr::mutate(valid_perc_num=readr::parse_number(valid_perc, "\\d+"))
  
for (i in 1:nrow(superv_bars)){
  superv_bars$label[i]<-stringi::stri_paste(paste(stringi::stri_wrap(superv_bars$label[i], width =40), "<br>"), collapse='')
}  
superv_bars$label_text<-paste0("Código: ",superv_bars$key,"<br>Valor:",superv_bars$val_text,"<br>Porcentaje:",superv_bars$perc,"<br>Válido:",superv_bars$valid_perc,"<br>Etiqueta:",superv_bars$label)

superv_bars_plot<-  
  #   ggplot(lid_ent_trab_bars,aes(x=items_num,y=sum,fill=val, label= label_text))+
  #   geom_col() +
  # sjPlot::theme_sjplot2()+
  # labs(x="Ítems",y="Número de Respuestas\n")+
  # theme(strip.background  = element_blank(),
  #       strip.text = element_text(face="bold", size=7))+
  # scale_x_continuous(breaks=c(1:6))+
  # theme(strip.text.x = element_text(size = 8, face = "bold"),
  #       axis.text.y = element_blank(),
  #       plot.caption=element_text(hjust = 0))
   ggplot(superv_bars,aes(x=key,y=sum,fill=factor(val), label= label_text))+
    geom_col() +
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=7))+
  #scale_x_continuous(breaks=c(1:9))+
  scale_fill_brewer(name= "Values",labels=c(paste0(1:length(levels(encuesta_rec$superv_1))),"NR"), na.value = "gray80", palette="Reds")+
  theme(strip.text.x = element_text(size = 8, face = "bold"),
        axis.text.y = element_blank(),
        plot.caption=element_text(hjust = 0))+
  scale_x_discrete(labels =c("Fomenta trabajo\nen equipo","Reconoce buen\n trabajo","Fomenta\nel desarrollo"))

ggplotly(superv_bars_plot, tooltip = c("label_text"))%>%
  layout(xaxis= list(showticklabels = T), showlegend=F)#, height = 750, width=1100)

Figure 18: Gráfico de Barras, Preguntas Sobre Supervisor/a

Show code
library(ggrepel)
superv_bars %>% 
ggplot(aes(x=key,y=valid_perc_num/100,fill=val_text, label= valid_perc))+
    geom_col() +
    scale_fill_grey(name= "Respuestas", start = 0.2, end = 0.8, na.value = "#FF5252")+#
  sjPlot::theme_sjplot2()+
  labs(x="Ítems",y="Número de Respuestas\n")+
      ylim(0,1.1)+
  #facet_wrap(~items, nrow = 3)+
  theme(strip.background  = element_blank(),
        strip.text = element_text(face="bold", size=6))+
  theme(strip.text.x = element_text(size = 13, face = "bold"),
        axis.text.x= element_text(size = 13),
        axis.title.y= element_blank(),
        axis.title.x= element_blank(),
        axis.text.y = element_blank(),
        legend.title = element_text(size = 12),
        legend.text = element_text(size = 12),
        plot.caption=element_text(hjust = 0),
        legend.position="bottom")+
  geom_label_repel(#position = position_dodge(width = .5),    # move to center of bars
              #vjust = 0,    # nudge above top of bar
            position = position_stack(vjust = 0.5),
              size = 6,
            direction = "y",
            force=1,
            seed=123,
            colour = "white", fontface = "bold") +
  scale_x_discrete(labels =c("Fomenta trabajo\nen equipo","Reconoce buen\n trabajo","Fomenta\nel desarrollo"))
Gráfico de Barras, Preguntas Sobre Supervisor/a (2)

Figure 19: Gráfico de Barras, Preguntas Sobre Supervisor/a (2)



Compilación

Descarga para exportación

Show code
#attr(uss_rec$surv,"label")<- "Supervivencia de Respuestas"

var_labels_df<-data.frame()
for (i in 1:length(encuesta_rec)){
  x<-names(encuesta_rec)[i]
var_labels_df<-rbind.data.frame(var_labels_df, cbind(x, attr(encuesta_rec[[x]],"label")))
}

codebook::var_label(encuesta_rec) <-
var_labels_df%>% 
  codebook::dict_to_list()

#rio::export(encuesta_rec, file= paste0(getwd(),"/_bd_encuesta_rec_ins.dta"))

write_csv2(encuesta_rec,
  paste0(getwd(),"/_bd_encuesta_rec_ins2022.csv"),
           na="")

save.image("__encuesta_rec_exp_post_crash2022.RData")

Para explorar los datos de la encuesta 2022

Show code
rpivotTable(data = encuesta2_rec %>% dplyr::select(-(hora:correo_val_cor)), rows="b_ger",cols = c("sexo"), vals = "Cuenta", aggregatorName = "Cuenta",rendererName = "Table", locale="es")




Show code
rm(list=ls());gc()

load("__encuesta_rec_exp_post_crash2.RData")

ExPanDaR::ExPanD(df= encuesta_rec %>% dplyr::select(-(response_id:custom_value)) %>%  dplyr::select(-correo),title = "Datos Encuesta Empresa Seguridad")
#options(rsconnect.http.trace = TRUE)
#options(rsconnect.http.verbose = TRUE)
#options(rsconnect.launch.browser = FALSE)
#getOption("rsconnect.max.bundle.size")
options(shiny.error = browser)

## Including Plots
#plot(pressure)

Información de la Sesión

Show code
Sys.getenv("R_LIBS_USER")
[1] "C:/Users/andre/Documents/R/win-library/4.1"
Show code
rstudioapi::getSourceEditorContext()
Document Context: 
- id:        '9692D773'
- path:      'H:/Mi unidad/DOCUMENTOS/Clima_empresa/Explorar_Datos2.Rmd'
- contents:  <2317 rows>
Document Selection:
- [1223, 5] -- [1223, 5]: ''
Show code
cbind.data.frame(label=data.frame(attr(unlist(sessionInfo()$R.version),"names")),data.table::data.table(unlist(sessionInfo()$R.version))) %>% 
  knitr::kable(format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Propiedades del documento"),
               col.names = c("Categoría","Valor"),
               align =c('l',rep('c', 101)),
               escape=T)%>%
    kableExtra::kable_classic(bootstrap_options = c("striped", "hover"),font_size = 12)
(#tab:session_info)Propiedades del documento
Categoría Valor
platform x86_64-w64-mingw32
arch x86_64
os mingw32
system x86_64, mingw32
status
major 4
minor 1.2
year 2021
month 11
day 01
svn rev 81115
language R
version.string R version 4.1.2 (2021-11-01)
nickname Bird Hippie
Show code
sessionInfo()$locale
[1] "LC_COLLATE=Spanish_Chile.1252;LC_CTYPE=Spanish_Chile.1252;LC_MONETARY=Spanish_Chile.1252;LC_NUMERIC=C;LC_TIME=Spanish_Chile.1252"
Show code
sessionInfo()$running
[1] "Windows 10 x64 (build 19042)"
Show code
sesion_info <- devtools::session_info()
dplyr::select(
  tibble::as_tibble(sesion_info$packages),
  c(package, loadedversion, source)
) %>% 
  DT::datatable(filter = 'top', colnames = c('Row number' =1,'Variable' = 2, 'Percentage'= 3),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        '', htmltools::em('Paquetes estadísticos utilizados')),
      options=list(
initComplete = htmlwidgets::JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({
            'font-family': 'Helvetica Neue',
            'font-size': '50%', 
            'code-inline-font-size': '15%', 
            'white-space': 'nowrap',
            'line-height': '0.75em',
            'min-height': '0.5em'
            });",#;
        "}")))
Show code
unlink("*_cache", recursive = T, force = T, expand = TRUE)